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