equal
deleted
inserted
replaced
38 { |
38 { |
39 // image buffer need to be deleted if |
39 // image buffer need to be deleted if |
40 // event server hasn't sent this event before |
40 // event server hasn't sent this event before |
41 // middlet is destroyed |
41 // middlet is destroyed |
42 delete iImageBuffer; |
42 delete iImageBuffer; |
|
43 |
43 } |
44 } |
44 |
45 |
45 void CMMASnapshotEvent::Dispatch(JNIEnv& aJni) |
46 void CMMASnapshotEvent::Dispatch(JNIEnv& aJni) |
46 { |
47 { |
47 DEBUG("MMA::CMMASnapshotEvent::Dispatch"); |
48 DEBUG("MMA::CMMASnapshotEvent::Dispatch"); |
48 |
49 |
49 // create java byte array |
50 // create java byte array |
50 jbyteArray byteArray; |
51 jbyteArray byteArray; |
|
52 |
51 if (iImageBuffer) |
53 if (iImageBuffer) |
52 { |
54 { |
53 byteArray = aJni.NewByteArray(iImageBuffer->Size()); |
55 byteArray = aJni.NewByteArray(iImageBuffer->Size()); |
54 if (byteArray) |
56 if (byteArray) |
55 { |
57 { |
67 |
69 |
68 if (!byteArray) |
70 if (!byteArray) |
69 { |
71 { |
70 delete iImageBuffer; |
72 delete iImageBuffer; |
71 iImageBuffer = NULL; // otherwise double delete in destructor |
73 iImageBuffer = NULL; // otherwise double delete in destructor |
72 |
|
73 DEBUG("MMA::CMMASnapshotEvent::Dispatch - Failed to create ByteArray"); |
74 DEBUG("MMA::CMMASnapshotEvent::Dispatch - Failed to create ByteArray"); |
74 return; |
75 return; |
75 } |
76 } |
76 |
77 |
77 |
78 |
79 iHandleEventMethod, |
80 iHandleEventMethod, |
80 iEventData, |
81 iEventData, |
81 byteArray); |
82 byteArray); |
82 |
83 |
83 delete iImageBuffer; |
84 delete iImageBuffer; |
|
85 |
84 iImageBuffer = NULL; // otherwise double delete in destructor |
86 iImageBuffer = NULL; // otherwise double delete in destructor |
|
87 aJni.DeleteLocalRef(byteArray); |
|
88 |
85 } |
89 } |
86 |
90 |
87 // END OF FILE |
91 // END OF FILE |