mail[Wesnoth-commits] r44935 - in /trunk/src: tstring.cpp tstring.hpp


Others Months | Index by Date | Thread Index
>>   [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Header


Content

Posted by koraq on July 30, 2010 - 23:49:
Author: mordante
Date: Fri Jul 30 23:49:33 2010
New Revision: 44935

URL: http://svn.gna.org/viewcvs/wesnoth?rev=44935&view=rev
Log:
Add some background info regarding r44568.

Modified:
    trunk/src/tstring.cpp
    trunk/src/tstring.hpp

Modified: trunk/src/tstring.cpp
URL: 
http://svn.gna.org/viewcvs/wesnoth/trunk/src/tstring.cpp?rev=44935&r1=44934&r2=44935&view=diff
==============================================================================
--- trunk/src/tstring.cpp (original)
+++ trunk/src/tstring.cpp Fri Jul 30 23:49:33 2010
@@ -53,7 +53,44 @@
        return seed;
 }
 
+t_string_base::walker::walker(const t_string_base& string) :
+       string_(string.value_),
+       begin_(0),
+       end_(string_.size()),
+       textdomain_(),
+       translatable_(false)
+{
+       if(string.translatable_) {
+               update();
+       }
+}
+
 #ifdef _MSC_VER
+/*
+ * From the IRC log of 23.07.2010
+ * 07:52 <silene> Upth: what did it break?
+ * 07:53 <Upth> silene: since that revision, the windows executable crashes
+ * immediately before loading the main menu
+ * 07:54 <silene> what kind of crash?
+ * 07:54 <Upth> assertion failed in the std::string library
+ * 07:54 <Upth> then "fatal error"
+ * 07:54 <Upth> and abnormal termination
+ * 07:54 <silene> which assertion?
+ * 07:55 <Upth> Expression: ("_Myptr + _Off <= (((_Mystring
+ * *)this->_Mycont)->_Myptr() + ((_Mystring *)this->_Mycont)->_Mysize) &&
+ * _Myptr + _Off >= ((_Mystring *)this->_Mycont)->_Myptr()", 0)
+ * 07:56 <shadowmaster> ugly.
+ * 07:57 <Upth> in the iterator += overload, called from the iterator +
+ * overload, called from std::basic_string::end(), called from line 409 of
+ * parser.cpp in write_key_val
+ * 07:58 <Upth> err std::basic_string::end() is called from
+ * t_string::walker::end(), which is called on line 409 of parser.cpp
+ * 07:58 <silene> that doesn't make sense; as far as i can tell it's a 
compiler
+ * bug
+ * 07:58 <silene> which compiler is that so that the code is made conditional
+ * on it?
+ * 07:58 <Upth> MSVC9
+ */
 t_string_base::walker::walker(const t_string& string) :
        string_(string.get().value_),
        begin_(0),
@@ -65,21 +102,7 @@
                update();
        }
 }
-#endif
-
-t_string_base::walker::walker(const t_string_base& string) :
-       string_(string.value_),
-       begin_(0),
-       end_(string_.size()),
-       textdomain_(),
-       translatable_(false)
-{
-       if(string.translatable_) {
-               update();
-       }
-}
-
-#ifdef _MSC_VER
+
 t_string_base::walker::walker(const std::string& string) :
        string_(string),
        begin_(0),

Modified: trunk/src/tstring.hpp
URL: 
http://svn.gna.org/viewcvs/wesnoth/trunk/src/tstring.hpp?rev=44935&r1=44934&r2=44935&view=diff
==============================================================================
--- trunk/src/tstring.hpp (original)
+++ trunk/src/tstring.hpp Fri Jul 30 23:49:33 2010
@@ -31,7 +31,10 @@
        public:
                walker(const t_string_base& string);
 #ifdef _MSC_VER
-               // Work around a compiler bug in MSVC 9.
+               /*
+                * Work around a compiler bug in MSVC 9 see definition for 
more
+                * information.
+                */
                explicit walker(const std::string&);
                walker(const t_string& string);
 #endif




Related Messages


Powered by MHonArc, Updated Sat Jul 31 00:00:20 2010