Enlightenment CVS committal

Author  : barbieri
Project : e17
Module  : proto

Dir     : e17/proto/python-efl/python-edje/edje


Modified Files:
        edje.c_edje.pyx edje.c_edje_message.pxi edje.c_edje_object.pxi 


Log Message:
Check NULL pointer from char* returns

===================================================================
RCS file: /cvs/e/e17/proto/python-efl/python-edje/edje/edje.c_edje.pyx,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -3 -r1.1.1.1 -r1.2
--- edje.c_edje.pyx     3 May 2007 21:56:06 -0000       1.1.1.1
+++ edje.c_edje.pyx     6 May 2007 17:48:45 -0000       1.2
@@ -29,7 +29,10 @@
 
 
 def fontset_append_get():
-    return edje_fontset_append_get()
+    cdef char *s
+    s = edje_fontset_append_get()
+    if s != NULL:
+        return s
 
 
 def file_collection_list(char *file):
@@ -49,7 +52,10 @@
 
 
 def file_data_get(char *file, char *key):
-    return edje_file_data_get(file, key)
+    cdef char *s
+    s = edje_file_data_get(file, key)
+    if s != NULL:
+        return s
 
 
 def file_cache_set(int count):
===================================================================
RCS file: /cvs/e/e17/proto/python-efl/python-edje/edje/edje.c_edje_message.pxi,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -3 -r1.1.1.1 -r1.2
--- edje.c_edje_message.pxi     3 May 2007 21:56:06 -0000       1.1.1.1
+++ edje.c_edje_message.pxi     6 May 2007 17:48:45 -0000       1.2
@@ -15,13 +15,15 @@
         def __get__(self):
             if self.obj == NULL:
                 raise ValueError("Object uninitialized")
-            return self.obj.str
+            if self.obj.str != NULL:
+                return self.obj.str
 
     property val:  # copy from 'str', to make api consistent
         def __get__(self):
             if self.obj == NULL:
                 raise ValueError("Object uninitialized")
-            return self.obj.str
+            if self.obj.str != NULL:
+                return self.obj.str
 
 
 cdef class MessageInt(Message):
@@ -48,7 +50,8 @@
                 raise ValueError("Object uninitialized")
             lst = []
             for i from 0 <= i < self.obj.count:
-                lst.append(self.obj.str[i])
+                if self.obj.str[i] != NULL:
+                    lst.append(self.obj.str[i])
             return lst
 
     def __len__(self):
@@ -117,7 +120,8 @@
         def __get__(self):
             if self.obj == NULL:
                 raise ValueError("Object uninitialized")
-            return self.obj.str
+            if self.obj.str != NULL:
+                return self.obj.str
 
     property val:
         def __get__(self):
@@ -131,7 +135,8 @@
         def __get__(self):
             if self.obj == NULL:
                 raise ValueError("Object uninitialized")
-            return self.obj.str
+            if self.obj.str != NULL:
+                return self.obj.str
 
     property val:
         def __get__(self):
@@ -145,7 +150,8 @@
         def __get__(self):
             if self.obj == NULL:
                 raise ValueError("Object uninitialized")
-            return self.obj.str
+            if self.obj.str != NULL:
+                return self.obj.str
 
     property val:
         def __get__(self):
@@ -175,7 +181,8 @@
         def __get__(self):
             if self.obj == NULL:
                 raise ValueError("Object uninitialized")
-            return self.obj.str
+            if self.obj.str != NULL:
+                return self.obj.str
 
     property val:
         def __get__(self):
===================================================================
RCS file: /cvs/e/e17/proto/python-efl/python-edje/edje/edje.c_edje_object.pxi,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -3 -r1.4 -r1.5
--- edje.c_edje_object.pxi      6 May 2007 17:48:00 -0000       1.4
+++ edje.c_edje_object.pxi      6 May 2007 17:48:45 -0000       1.5
@@ -71,7 +71,10 @@
             self.size_set(w, h)
 
     def data_get(self, char *key):
-        return edje_object_data_get(self.obj, key)
+        cdef char *s
+        s = edje_object_data_get(self.obj, key)
+        if s != NULL:
+            return s
 
     def file_set(self, char *file, char *part):
         if edje_object_file_set(self.obj, file, part) == 0:
@@ -80,7 +83,15 @@
     def file_get(self):
         cdef char *file, *part
         edje_object_file_get(self.obj, &file, &part)
-        return (file, part)
+        if file == NULL:
+            f = None
+        else:
+            f = file
+        if part == NULL:
+            p = None
+        else:
+            p = part
+        return (f, p)
 
     def load_error_get(self):
         return edje_object_load_error_get(self.obj)



-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to