diff options
Diffstat (limited to 'cython/sbservices.pxi')
| -rw-r--r-- | cython/sbservices.pxi | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/cython/sbservices.pxi b/cython/sbservices.pxi index 28aa5a5..13a49aa 100644 --- a/cython/sbservices.pxi +++ b/cython/sbservices.pxi | |||
| @@ -52,7 +52,7 @@ cdef class SpringboardServicesClient(Base): | |||
| 52 | self.handle_error(err) | 52 | self.handle_error(err) |
| 53 | except BaseError, e: | 53 | except BaseError, e: |
| 54 | if c_node != NULL: | 54 | if c_node != NULL: |
| 55 | plist_free(c_node) | 55 | plist.plist_free(c_node) |
| 56 | raise | 56 | raise |
| 57 | return plist.plist_t_to_node(c_node) | 57 | return plist.plist_t_to_node(c_node) |
| 58 | def __set__(self, plist.Node newstate not None): | 58 | def __set__(self, plist.Node newstate not None): |
| @@ -60,7 +60,6 @@ cdef class SpringboardServicesClient(Base): | |||
| 60 | 60 | ||
| 61 | cpdef bytes get_pngdata(self, bytes bundleId): | 61 | cpdef bytes get_pngdata(self, bytes bundleId): |
| 62 | cdef: | 62 | cdef: |
| 63 | bytes result | ||
| 64 | char* pngdata = NULL | 63 | char* pngdata = NULL |
| 65 | uint64_t pngsize | 64 | uint64_t pngsize |
| 66 | sbservices_error_t err | 65 | sbservices_error_t err |
| @@ -68,8 +67,6 @@ cdef class SpringboardServicesClient(Base): | |||
| 68 | try: | 67 | try: |
| 69 | self.handle_error(err) | 68 | self.handle_error(err) |
| 70 | except BaseError, e: | 69 | except BaseError, e: |
| 70 | stdlib.free(pngdata) | ||
| 71 | raise | 71 | raise |
| 72 | finally: | 72 | return pngdata[:pngsize] |
| 73 | result = pngdata[:pngsize] | ||
| 74 | free(pngdata) | ||
| 75 | return result | ||
