[cp-patches] [RFC PATCH 1/4] Handle malloc() failure in java_util_VMTimeZone.c file.

2012-10-15 Thread Pekka Enberg
From: Ivan Maidanski iv...@mail.ru

2011-07-20  Ivan Maidanski  iv...@mail.ru

* native/jni/java-util/java_util_VMTimeZone.c:
Include jcl.h file.
(Java_java_util_VMTimeZone_getSystemTimeZoneId): Throw
OutOfMemoryException in case of malloc() failure.
---
 ChangeLog   |7 +++
 native/jni/java-util/java_util_VMTimeZone.c |7 +++
 2 files changed, 14 insertions(+), 0 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 18b6c03..c0d84cd 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2011-07-20  Ivan Maidanski  iv...@mail.ru
+
+   * native/jni/java-util/java_util_VMTimeZone.c:
+   Include jcl.h file.
+   (Java_java_util_VMTimeZone_getSystemTimeZoneId): Throw
+   OutOfMemoryException in case of malloc() failure.
+
 2012-06-10  Ivan Maidanski  iv...@mail.ru
 
* compat/.gitignore,
diff --git a/native/jni/java-util/java_util_VMTimeZone.c 
b/native/jni/java-util/java_util_VMTimeZone.c
index a3a986d..1c4c0cf 100644
--- a/native/jni/java-util/java_util_VMTimeZone.c
+++ b/native/jni/java-util/java_util_VMTimeZone.c
@@ -53,6 +53,7 @@ exception statement from your version. */
 #include stdlib.h
 
 #include jni.h
+#include jcl.h
 
 #include java_util_VMTimeZone.h
 
@@ -170,6 +171,12 @@ Java_java_util_VMTimeZone_getSystemTimeZoneId (JNIEnv * 
env,
   tz2_len = strlen (tz2);
   tzoff_len = jint_to_charbuf (tzoff + 11, tzoffset);
   tzid = (char *) malloc (tz1_len + tz2_len + tzoff_len + 1);  /* FIXME alloc 
*/
+  if (tzid == NULL) {
+JCL_ThrowException (env, java/lang/OutOfMemoryError,
+malloc() failed);
+return 0;
+  }
+
   memcpy (tzid, tz1, tz1_len);
   memcpy (tzid + tz1_len, tzoff + 11 - tzoff_len, tzoff_len);
   memcpy (tzid + tz1_len + tzoff_len, tz2, tz2_len);
-- 
1.7.7.6




Re: [cp-patches] [RFC PATCH 1/4] Handle malloc() failure in java_util_VMTimeZone.c file.

2012-10-15 Thread Andrew Hughes
- Original Message -
 From: Ivan Maidanski iv...@mail.ru
 
 2011-07-20  Ivan Maidanski  iv...@mail.ru
 
   * native/jni/java-util/java_util_VMTimeZone.c:
   Include jcl.h file.
   (Java_java_util_VMTimeZone_getSystemTimeZoneId): Throw
   OutOfMemoryException in case of malloc() failure.
 ---
  ChangeLog   |7 +++
  native/jni/java-util/java_util_VMTimeZone.c |7 +++
  2 files changed, 14 insertions(+), 0 deletions(-)
 
 diff --git a/ChangeLog b/ChangeLog
 index 18b6c03..c0d84cd 100644
 --- a/ChangeLog
 +++ b/ChangeLog
 @@ -1,3 +1,10 @@
 +2011-07-20  Ivan Maidanski  iv...@mail.ru
 +
 + * native/jni/java-util/java_util_VMTimeZone.c:
 + Include jcl.h file.
 + (Java_java_util_VMTimeZone_getSystemTimeZoneId): Throw
 + OutOfMemoryException in case of malloc() failure.
 +
  2012-06-10  Ivan Maidanski  iv...@mail.ru
  
   * compat/.gitignore,
 diff --git a/native/jni/java-util/java_util_VMTimeZone.c
 b/native/jni/java-util/java_util_VMTimeZone.c
 index a3a986d..1c4c0cf 100644
 --- a/native/jni/java-util/java_util_VMTimeZone.c
 +++ b/native/jni/java-util/java_util_VMTimeZone.c
 @@ -53,6 +53,7 @@ exception statement from your version. */
  #include stdlib.h
  
  #include jni.h
 +#include jcl.h
  
  #include java_util_VMTimeZone.h
  
 @@ -170,6 +171,12 @@ Java_java_util_VMTimeZone_getSystemTimeZoneId
 (JNIEnv * env,
tz2_len = strlen (tz2);
tzoff_len = jint_to_charbuf (tzoff + 11, tzoffset);
tzid = (char *) malloc (tz1_len + tz2_len + tzoff_len + 1);/*
FIXME alloc */
 +  if (tzid == NULL) {
 +JCL_ThrowException (env, java/lang/OutOfMemoryError,
 +malloc() failed);
 +return 0;
 +  }
 +
memcpy (tzid, tz1, tz1_len);
memcpy (tzid + tz1_len, tzoff + 11 - tzoff_len, tzoff_len);
memcpy (tzid + tz1_len + tzoff_len, tz2, tz2_len);
 --
 1.7.7.6
 
 
 

Can the FIXME now be dropped?
-- 
Andrew :)

Free Java Software Engineer
Red Hat, Inc. (http://www.redhat.com)

PGP Key: 248BDC07 (https://keys.indymedia.org/)
Fingerprint = EC5A 1F5E C0AD 1D15 8F1F  8F91 3B96 A578 248B DC07




Re: [cp-patches] [RFC PATCH 1/4] Handle malloc() failure in java_util_VMTimeZone.c file.

2012-10-15 Thread Pekka Enberg
On Mon, Oct 15, 2012 at 12:59 PM, Andrew Hughes ahug...@redhat.com wrote:
 @@ -170,6 +171,12 @@ Java_java_util_VMTimeZone_getSystemTimeZoneId
 (JNIEnv * env,
tz2_len = strlen (tz2);
tzoff_len = jint_to_charbuf (tzoff + 11, tzoffset);
tzid = (char *) malloc (tz1_len + tz2_len + tzoff_len + 1);/*
FIXME alloc */
 +  if (tzid == NULL) {
 +JCL_ThrowException (env, java/lang/OutOfMemoryError,
 +malloc() failed);
 +return 0;
 +  }
 +
memcpy (tzid, tz1, tz1_len);
memcpy (tzid + tz1_len, tzoff + 11 - tzoff_len, tzoff_len);
memcpy (tzid + tz1_len + tzoff_len, tz2, tz2_len);

 Can the FIXME now be dropped?

Fixed.