diff -r e5618cc85d74 -r 6c158198356e javauis/eswt_akn/org.eclipse.ercp.swt.s60/native/src/org_eclipse_ercp_swt_mobile_internal_OS.cpp --- a/javauis/eswt_akn/org.eclipse.ercp.swt.s60/native/src/org_eclipse_ercp_swt_mobile_internal_OS.cpp Thu Jul 15 18:31:06 2010 +0300 +++ b/javauis/eswt_akn/org.eclipse.ercp.swt.s60/native/src/org_eclipse_ercp_swt_mobile_internal_OS.cpp Thu Aug 19 09:48:13 2010 +0300 @@ -1483,12 +1483,19 @@ jint* elements = aJniEnv->GetIntArrayElements(aIconsHandles, &isCopy); if (elements != NULL) { - for (TInt i=0; i(elements[i])); + err = iconsHandles.Append(reinterpret_cast(elements[i])); } // Cleanup aJniEnv->ReleaseIntArrayElements(aIconsHandles, elements, JNI_ABORT); + + if (err != KErrNone ) + { + ThrowIfError(err, aJniEnv); + return; + } } }