]> git.saurik.com Git - wxWidgets.git/commitdiff
Added better asserts, helps with debugging strange wxVariant issues
authorJaakko Salli <jaakko.salli@dnainternet.net>
Sat, 6 Jun 2009 15:27:55 +0000 (15:27 +0000)
committerJaakko Salli <jaakko.salli@dnainternet.net>
Sat, 6 Jun 2009 15:27:55 +0000 (15:27 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60912 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

include/wx/propgrid/propgriddefs.h

index 9bb33b9026c1f5ab1a0563d32b43b08e2acc92a1..08209fa42813a7c4d538ea6d625673444eb13bc0 100644 (file)
@@ -589,14 +589,24 @@ expdecl wxVariant& operator << ( wxVariant &variant, const classname &value )\
 } \
 expdecl classname& classname##RefFromVariant( wxVariant& variant ) \
 { \
 } \
 expdecl classname& classname##RefFromVariant( wxVariant& variant ) \
 { \
-    wxASSERT( variant.GetType() == #classname );\
-    classname##VariantData *data = (classname##VariantData*) variant.GetData();\
+    wxASSERT_MSG( variant.GetType() == wxS(#classname), \
+                  wxString::Format("Variant type should have been '%s'" \
+                                   "instead of '%s'", \
+                                   wxS(#classname), \
+                                   variant.GetType().c_str())); \
+    classname##VariantData *data = \
+        (classname##VariantData*) variant.GetData(); \
     return data->GetValue();\
 } \
 expdecl const classname& classname##RefFromVariant( const wxVariant& variant ) \
 { \
     return data->GetValue();\
 } \
 expdecl const classname& classname##RefFromVariant( const wxVariant& variant ) \
 { \
-    wxASSERT( variant.GetType() == #classname );\
-    classname##VariantData *data = (classname##VariantData*) variant.GetData();\
+    wxASSERT_MSG( variant.GetType() == wxS(#classname), \
+                  wxString::Format("Variant type should have been '%s'" \
+                                   "instead of '%s'", \
+                                   wxS(#classname), \
+                                   variant.GetType().c_str())); \
+    classname##VariantData *data = \
+        (classname##VariantData*) variant.GetData(); \
     return data->GetValue();\
 }
 
     return data->GetValue();\
 }