Author: miguel
Date: 2007-11-09 00:07:08 -0500 (Fri, 09 Nov 2007)
New Revision: 89301

Modified:
   trunk/moon/plugin/plugin-class.cpp
Log:
Improve error messages

Modified: trunk/moon/plugin/plugin-class.cpp
===================================================================
--- trunk/moon/plugin/plugin-class.cpp  2007-11-09 05:05:16 UTC (rev 89300)
+++ trunk/moon/plugin/plugin-class.cpp  2007-11-09 05:07:08 UTC (rev 89301)
@@ -1698,12 +1698,10 @@
 static bool
 _set_dependency_property_value (DependencyObject *dob, DependencyProperty *p, 
const NPVariant *value)
 {
-
-       if (NPVARIANT_IS_OBJECT (*value)) {
+       if (NPVARIANT_IS_OBJECT (*value)){ 
                MoonlightObject *obj = (MoonlightObject*) NPVARIANT_TO_OBJECT 
(*value);
                
-               if (obj->moonlight_type >= Type::DEPENDENCY_OBJECT || 
-                       obj->moonlight_type == Type::INVALID) {
+               if (obj->moonlight_type >= Type::DEPENDENCY_OBJECT || 
obj->moonlight_type == Type::INVALID) {
                        MoonlightDependencyObjectObject *depobj = 
(MoonlightDependencyObjectObject*) NPVARIANT_TO_OBJECT (*value);
                        dob->SetValue (p, Value(depobj->GetDependencyObject 
()));
 
@@ -1752,8 +1750,16 @@
                else if (NPVARIANT_IS_STRING (*value)) {
                        strvalue = g_strdup (NPVARIANT_TO_STRING 
(*value).utf8characters);
                }
+               else if (NPVARIANT_IS_NULL (*value)){
+                       DEBUGWARN ("unhandled variant type NULL in 
do.set_property for (%s::%s)", dob->GetTypeName (), p->name);
+                       return true;
+               }
+               else if (NPVARIANT_IS_VOID (*value)){
+                       DEBUGWARN ("unhandled variant type VOID in 
do.set_property for (%s::%s)", dob->GetTypeName (), p->name);
+                       return true;
+               }
                else {
-                       DEBUG_WARN_NOTIMPLEMENTED ("unhandled variant type in 
do.set_property");
+                       DEBUGWARN ("unhandled variant type in do.set_property 
for (%s::%s)", dob->GetTypeName (), p->name);
                        return true;
                }
 

_______________________________________________
Mono-patches maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches

Reply via email to