Author: shadowmaster
Date: Fri May  2 03:19:46 2008
New Revision: 26299

URL: http://svn.gna.org/viewcvs/wesnoth?rev=26299&view=rev
Log:
* Backport r26298 (does not mess with translations, sirs)

Modified:
    branches/1.4/src/dialogs.cpp

Modified: branches/1.4/src/dialogs.cpp
URL: 
http://svn.gna.org/viewcvs/wesnoth/branches/1.4/src/dialogs.cpp?rev=26299&r1=26298&r2=26299&view=diff
==============================================================================
--- branches/1.4/src/dialogs.cpp (original)
+++ branches/1.4/src/dialogs.cpp Fri May  2 03:19:46 2008
@@ -550,15 +550,20 @@
                str << "\n";
 
                if(campaign_type == "scenario") {
-                       const config* campaign = 
game_config_->find_child("campaign","id",summary["campaign"]);
+                       const std::string campaign_id = summary["campaign"];
+                       const config* campaign = campaign_id.empty() ? NULL : 
game_config_->find_child("campaign", "id", campaign_id);
+                       utils::string_map symbols;
                        if (campaign != NULL) {
-                               utils::string_map symbols;
                                symbols["campaign_name"] = (*campaign)["name"];
-                               //[EMAIL PROTECTED] FIXME: this is a 
superfluous manner of making the string,
-                               //! however, I'll keep it in 1.4 for the sake 
of not breaking existing translations
-                               str << vgettext("Campaign: $campaign_name", 
symbols);
                        } else {
-                               str << _("#(Invalid)");
+                               // Fallback to nontranslatable campaign id.
+                               symbols["campaign_name"] = "(" + campaign_id + 
")";
+                       }
+                       str << vgettext("Campaign: $campaign_name", symbols);
+
+                       // Display internal id for debug purposes if we didn't 
above
+                       if (game_config::debug && (campaign != NULL)) {
+                               str << '\n' << "(" << campaign_id << ")";
                        }
                } else if(campaign_type == "multiplayer") {
                        str << _("Multiplayer");


_______________________________________________
Wesnoth-commits mailing list
[email protected]
https://mail.gna.org/listinfo/wesnoth-commits

Reply via email to