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  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.



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 
> 
> 2011-07-20  Ivan Maidanski  
> 
>   * 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  
> +
> + * 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  
>  
>   * 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 
>  
>  #include 
> +#include 
>  
>  #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




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

2012-10-15 Thread Pekka Enberg
From: Ivan Maidanski 

2011-07-20  Ivan Maidanski  

* 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  
+
+   * 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  
 
* 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 
 
 #include 
+#include 
 
 #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