[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Wesnoth-cvs-commits] wesnoth/src game.cpp
From: |
David White |
Subject: |
[Wesnoth-cvs-commits] wesnoth/src game.cpp |
Date: |
Sun, 03 Jul 2005 10:48:48 -0400 |
CVSROOT: /cvsroot/wesnoth
Module name: wesnoth
Branch:
Changes by: David White <address@hidden> 05/07/03 14:48:48
Modified files:
src : game.cpp
Log message:
made it so #defines from one user campaign aren't visible in another
user campaign
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/src/game.cpp.diff?tr1=1.260&tr2=1.261&r1=text&r2=text
Patches:
Index: wesnoth/src/game.cpp
diff -u wesnoth/src/game.cpp:1.260 wesnoth/src/game.cpp:1.261
--- wesnoth/src/game.cpp:1.260 Sat Jul 2 21:37:18 2005
+++ wesnoth/src/game.cpp Sun Jul 3 14:48:47 2005
@@ -1,4 +1,4 @@
-/* $Id: game.cpp,v 1.260 2005/07/02 21:37:18 ott Exp $ */
+/* $Id: game.cpp,v 1.261 2005/07/03 14:48:47 Sirp Exp $ */
/*
Copyright (C) 2003 by David White <address@hidden>
Part of the Battle for Wesnoth Project http://www.wesnoth.org/
@@ -1269,56 +1269,58 @@
scoped_istream stream =
preprocess_file("data/game.cfg", &defines_map);
std::string error_log, user_error_log;
- read(cfg, *stream, &error_log);
- //load user campaigns
- const std::string user_campaign_dir =
get_user_data_dir() + "/data/campaigns/";
- std::vector<std::string> user_campaigns,
error_campaigns;
-
get_files_in_dir(user_campaign_dir,&user_campaigns,NULL,ENTIRE_FILE_PATH);
- for(std::vector<std::string>::const_iterator uc
= user_campaigns.begin(); uc != user_campaigns.end(); ++uc) {
- static const std::string extension =
".cfg";
- if(uc->size() < extension.size() ||
std::equal(uc->end() - extension.size(),uc->end(),extension.begin()) == false) {
- continue;
- }
-
- try {
- scoped_istream stream =
preprocess_file(*uc,&defines_map);
-
- std::string campaign_error_log;
-
- config user_campaign_cfg;
-
read(user_campaign_cfg,*stream,&campaign_error_log);
-
- if(campaign_error_log.empty()) {
-
cfg.append(user_campaign_cfg);
- } else {
- user_error_log +=
campaign_error_log;
-
error_campaigns.push_back(*uc);
- }
- } catch(config::error& err) {
- std::cerr << "error reading
user campaign '" << *uc << "'\n";
- error_campaigns.push_back(*uc);
-
- user_error_log += err.message +
"\n";
- } catch(io_exception&) {
- std::cerr << "error reading
user campaign '" << *uc << "'\n";
- error_campaigns.push_back(*uc);
- }
- }
-
- if(error_campaigns.empty() == false) {
- std::stringstream msg;
- msg << _("The following add-on
campaign(s) had errors and could not be loaded:");
-
for(std::vector<std::string>::const_iterator i = error_campaigns.begin(); i !=
error_campaigns.end(); ++i) {
- msg << "\n" << *i;
- }
-
- msg << "\n" << _("ERROR DETAILS:") <<
"\n" << user_error_log;
-
-
gui::show_error_message(disp(),msg.str());
- }
-
- cfg.merge_children("units");
+ read(cfg, *stream, &error_log);
+
+ //load user campaigns
+ const std::string user_campaign_dir =
get_user_data_dir() + "/data/campaigns/";
+ std::vector<std::string> user_campaigns,
error_campaigns;
+
get_files_in_dir(user_campaign_dir,&user_campaigns,NULL,ENTIRE_FILE_PATH);
+ for(std::vector<std::string>::const_iterator uc
= user_campaigns.begin(); uc != user_campaigns.end(); ++uc) {
+ static const std::string extension =
".cfg";
+ if(uc->size() < extension.size() ||
std::equal(uc->end() - extension.size(),uc->end(),extension.begin()) == false) {
+ continue;
+ }
+
+ try {
+ preproc_map
user_defines_map(defines_map);
+ scoped_istream stream =
preprocess_file(*uc,&user_defines_map);
+
+ std::string campaign_error_log;
+
+ config user_campaign_cfg;
+
read(user_campaign_cfg,*stream,&campaign_error_log);
+
+ if(campaign_error_log.empty()) {
+
cfg.append(user_campaign_cfg);
+ } else {
+ user_error_log +=
campaign_error_log;
+
error_campaigns.push_back(*uc);
+ }
+ } catch(config::error& err) {
+ std::cerr << "error reading
user campaign '" << *uc << "'\n";
+ error_campaigns.push_back(*uc);
+
+ user_error_log += err.message +
"\n";
+ } catch(io_exception&) {
+ std::cerr << "error reading
user campaign '" << *uc << "'\n";
+ error_campaigns.push_back(*uc);
+ }
+ }
+
+ if(error_campaigns.empty() == false) {
+ std::stringstream msg;
+ msg << _("The following add-on
campaign(s) had errors and could not be loaded:");
+
for(std::vector<std::string>::const_iterator i = error_campaigns.begin(); i !=
error_campaigns.end(); ++i) {
+ msg << "\n" << *i;
+ }
+
+ msg << "\n" << _("ERROR DETAILS:") <<
"\n" << user_error_log;
+
+
gui::show_error_message(disp(),msg.str());
+ }
+
+ cfg.merge_children("units");
if(!error_log.empty()) {
gui::show_error_message(disp(),
- [Wesnoth-cvs-commits] wesnoth/src game.cpp,
David White <=