[libinline-java-perl] 390/398: commit to github of 0.53_90

Jonas Smedegaard dr at jones.dk
Thu Feb 26 11:43:29 UTC 2015


This is an automated email from the git hooks/post-receive script.

js pushed a commit to tag 0.55
in repository libinline-java-perl.

commit 2fc609bb46f2b85a48872f7e93a23583656a77c4
Author: Patrick LeBoutillier <patl at cpan.org>
Date:   Tue Aug 19 07:32:57 2014 -0400

    commit to github of 0.53_90
---
 CHANGES                                      |  5 +++++
 Java.pm                                      |  2 +-
 Java.pod                                     |  2 +-
 Java/Array.pm                                |  4 ++--
 Java/Callback.pm                             |  2 +-
 Java/Class.pm                                |  2 +-
 Java/Handle.pm                               |  4 ++--
 Java/JNI.pm                                  |  2 +-
 Java/JNI.xs                                  |  2 +-
 Java/JVM.pm                                  |  2 +-
 Java/Object.pm                               |  4 ++--
 Java/PerlInterpreter/PerlInterpreter.pm      |  3 ++-
 Java/PerlInterpreter/t/02_perl_interpreter.t | 11 ++++++++++-
 Java/PerlInterpreter/t/Tests.pl              | 12 ++++++++++++
 Java/Portable.pm                             | 24 ++++++++++++++++--------
 Java/Protocol.pm                             |  2 +-
 Java/Server.pm                               |  2 +-
 META.yml                                     |  2 +-
 t/03_objects.t                               |  1 -
 t/13_handles.t                               |  2 +-
 20 files changed, 62 insertions(+), 28 deletions(-)

diff --git a/CHANGES b/CHANGES
index be9d7e9..f081104 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,5 +1,10 @@
 Revision history for Perl extension Inline::Java
 ------------------------------------------------
+0.54
+	- Added AUTOSTUDY to PerlInterpreter
+	- Applied patch by Max Vohlen to fix JNI bug
+	- Applied patch by Charles Brabec to allow wildcards in CLASSPATH
+
 0.53  Sun Jan  9 08:15:06 EST 2011
     - Removed PerlNatives extension from the build because it is unmaintained and broken.
       It can still be enabled manually using the BUILD_PERL_NATIVES build configuration 
diff --git a/Java.pm b/Java.pm
index 27d5472..031f1ee 100644
--- a/Java.pm
+++ b/Java.pm
@@ -8,7 +8,7 @@ package Inline::Java ;
 use strict ;
 require 5.006 ;
 
-$Inline::Java::VERSION = '0.53' ;
+$Inline::Java::VERSION = '0.53_90' ;
 
 
 # DEBUG is set via the DEBUG config
diff --git a/Java.pod b/Java.pod
index 453a868..a4575e1 100644
--- a/Java.pod
+++ b/Java.pod
@@ -524,7 +524,7 @@ be known to Perl:
    $obj->{i} = 2 ;
    print($obj->{i} . "\n") ; # prints 2
    my $hm1 = $obj->{hm} ; # instance way
-   my $hm2 = $Pod_4::hm ; # static way   
+   my $hm2 = $Pod_5::hm ; # static way   
 
 =for comment
 
diff --git a/Java/Array.pm b/Java/Array.pm
index b98a7d6..a1269e5 100644
--- a/Java/Array.pm
+++ b/Java/Array.pm
@@ -4,7 +4,7 @@ package Inline::Java::Array ;
 use strict ;
 use Carp ;
 
-$Inline::Java::Array::VERSION = '0.53' ;
+$Inline::Java::Array::VERSION = '0.53_90' ;
 
 # Here we store as keys the knots and as values our blessed objects
 my $OBJECTS = {} ;
@@ -149,7 +149,7 @@ sub DESTROY {
 	if (! $knot){
 		Inline::Java::debug(4, "destroying Inline::Java::Array::Tie") ;
 
-		$OBJECTS->{$this} = undef ;
+		delete $OBJECTS->{$this} ;
 	}
 	else{
 		Inline::Java::debug(4, "destroying Inline::Java::Array") ;
diff --git a/Java/Callback.pm b/Java/Callback.pm
index de3bd1d..9825232 100644
--- a/Java/Callback.pm
+++ b/Java/Callback.pm
@@ -3,7 +3,7 @@ package Inline::Java::Callback ;
 use strict ;
 use Carp ;
 
-$Inline::Java::Callback::VERSION = '0.53' ;
+$Inline::Java::Callback::VERSION = '0.53_90' ;
 
 $Inline::Java::Callback::OBJECT_HOOK = undef ;
 
diff --git a/Java/Class.pm b/Java/Class.pm
index 0558885..22aa22b 100644
--- a/Java/Class.pm
+++ b/Java/Class.pm
@@ -3,7 +3,7 @@ package Inline::Java::Class ;
 use strict ;
 use Carp ;
 
-$Inline::Java::Class::VERSION = '0.53' ;
+$Inline::Java::Class::VERSION = '0.53_90' ;
 
 $Inline::Java::Class::MAX_SCORE = 10 ;
 
diff --git a/Java/Handle.pm b/Java/Handle.pm
index 4bea9bc..5e7fb1e 100644
--- a/Java/Handle.pm
+++ b/Java/Handle.pm
@@ -5,7 +5,7 @@ use strict ;
 use Symbol ;
 use Carp ;
 
-$Inline::Java::Handle::VERSION = '0.53' ;
+$Inline::Java::Handle::VERSION = '0.53_90' ;
 
 
 # Here we store as keys the knots and as values our blessed objects
@@ -157,7 +157,7 @@ sub DESTROY {
 		 	$this->__close() ;	
 		}
 
-		$OBJECTS->{$this} = undef ;
+		delete $OBJECTS->{$this} ;
 	}
 	else {
 		Inline::Java::debug(4, "destroying Inline::Java::Handle") ;
diff --git a/Java/JNI.pm b/Java/JNI.pm
index 9384401..fe07a15 100644
--- a/Java/JNI.pm
+++ b/Java/JNI.pm
@@ -4,7 +4,7 @@ package Inline::Java::JNI ;
 
 use strict ;
 
-$Inline::Java::JNI::VERSION = '0.53' ;
+$Inline::Java::JNI::VERSION = '0.53_90' ;
 
 use DynaLoader ;
 use Carp ;
diff --git a/Java/JNI.xs b/Java/JNI.xs
index cc359d7..249b747 100644
--- a/Java/JNI.xs
+++ b/Java/JNI.xs
@@ -307,5 +307,5 @@ process_command(this, data)
 	RETVAL
 
 	CLEANUP:
-	(*(env))->DeleteLocalRef(env, resp) ;
 	(*(env))->ReleaseStringUTFChars(env, resp, RETVAL) ;
+	(*(env))->DeleteLocalRef(env, resp) ;
diff --git a/Java/JVM.pm b/Java/JVM.pm
index 3797cd5..7ed1254 100644
--- a/Java/JVM.pm
+++ b/Java/JVM.pm
@@ -9,7 +9,7 @@ use IO::Socket ;
 use Text::ParseWords ;
 use Inline::Java::Portable ;
 
-$Inline::Java::JVM::VERSION = '0.53' ;
+$Inline::Java::JVM::VERSION = '0.53_90' ;
 
 my %SIGS = () ;
 
diff --git a/Java/Object.pm b/Java/Object.pm
index 2f56856..42092e7 100644
--- a/Java/Object.pm
+++ b/Java/Object.pm
@@ -5,7 +5,7 @@ use strict ;
 use Inline::Java::Protocol ;
 use Carp ;
 
-$Inline::Java::Object::VERSION = '0.53' ;
+$Inline::Java::Object::VERSION = '0.53_90' ;
 
 # Here we store as keys the knots and as values our blessed private objects
 my $PRIVATES = {} ;
@@ -369,7 +369,7 @@ sub DESTROY {
 			my $proto = $priv->{proto} ;
 			$priv->{proto} = undef ;
 			$proto->{obj_priv} = undef ;
-			$PRIVATES->{$this} = undef ;
+			delete $PRIVATES->{$this} ;
 		}
 		else{
 			Inline::Java::debug(4, "script marked as DONE, object destruction not propagated to Java") ;
diff --git a/Java/PerlInterpreter/PerlInterpreter.pm b/Java/PerlInterpreter/PerlInterpreter.pm
index 842a09c..c7e205c 100644
--- a/Java/PerlInterpreter/PerlInterpreter.pm
+++ b/Java/PerlInterpreter/PerlInterpreter.pm
@@ -8,8 +8,9 @@ $Inline::Java::PerlInterpreter::VERSION = '0.52' ;
 
 use Inline (
 	Java => 'STUDY',
-	EMBEDDED_JNI => 1,
 	STUDY => [],
+	AUTOSTUDY => 1,
+	EMBEDDED_JNI => 1,
 	NAME => 'Inline::Java::PerlInterpreter',
 ) ;
 
diff --git a/Java/PerlInterpreter/t/02_perl_interpreter.t b/Java/PerlInterpreter/t/02_perl_interpreter.t
index dc04efa..595c3ec 100644
--- a/Java/PerlInterpreter/t/02_perl_interpreter.t
+++ b/Java/PerlInterpreter/t/02_perl_interpreter.t
@@ -11,7 +11,7 @@ BEGIN {
         exit ;
 	}
 
-    plan(tests => 12) ;
+    plan(tests => 13) ;
 }
 
 
@@ -68,6 +68,8 @@ __END__
 __Java__
 package org.perl.inline.java ;
 
+import java.util.* ;
+
 class InlineJavaPerlInterpreterTests implements Runnable {
 	private static int cnt = 2 ;
 	private static InlineJavaPerlInterpreter pi = null ;
@@ -134,6 +136,13 @@ class InlineJavaPerlInterpreterTests implements Runnable {
 
 			pi.StartCallbackLoop();
 
+			ArrayList a = new ArrayList() ;
+			for (int i = 0 ; i < 100 ; i++){
+				a.add(new Integer(i * 2)) ;
+			}
+			sum = (Integer)pi.CallPerlSub("sum_array_list", new Object [] {a}, Integer.class) ;
+			ok(sum, new Integer(9900)) ;
+
 			pi.destroy() ;
 			ok("1", "1") ;
 		}
diff --git a/Java/PerlInterpreter/t/Tests.pl b/Java/PerlInterpreter/t/Tests.pl
index 6254ab7..51a6baf 100644
--- a/Java/PerlInterpreter/t/Tests.pl
+++ b/Java/PerlInterpreter/t/Tests.pl
@@ -5,4 +5,16 @@ sub whats_your_name {
 	return "perl" ;
 }
 
+
+sub sum_array_list {
+	my $a = shift ;
+
+	my $sum = 0 ;
+	for (my $i = 0 ; $i < $a->size() ; $i++){
+		$sum += $a->get($i) ;
+	}
+
+	return $sum ;
+}
+
 1 ;
diff --git a/Java/Portable.pm b/Java/Portable.pm
index c3f0a96..67d0992 100644
--- a/Java/Portable.pm
+++ b/Java/Portable.pm
@@ -9,7 +9,7 @@ use Config ;
 use File::Find ;
 use File::Spec ;
 
-$Inline::Java::Portable::VERSION = '0.53' ;
+$Inline::Java::Portable::VERSION = '0.53_90' ;
 
 # Here is some code to figure out if we are running on command.com
 # shell under Windows.
@@ -58,15 +58,23 @@ sub make_classpath {
 	my @fcp = () ;
 	my %cp = map {$_ => 1} @cp ;
 	foreach my $p (@cp){
-		if (($p)&&(-e $p)){
-			if ($cp{$p}){
+		if ($cp{$p}){
+			if ($p =~ /^(.*)\/\*$/){
+				my $d = $1 ;
+				if (($d)&&(-d $d)){
+					Inline::Java::debug(2, "keeping wildcard classpath as '$p'") ;
+					my $fp = File::Spec->rel2abs($d) . '/*' ;
+					push @fcp, Inline::Java::Portable::portable("SUB_FIX_JAVA_PATH", $fp) ;
+				}
+			}
+			elsif (($p)&&(-e $p)){
 				my $fp = File::Spec->rel2abs($p) ;
 				push @fcp, Inline::Java::Portable::portable("SUB_FIX_JAVA_PATH", $fp) ;
-				delete $cp{$p} ;
 			}
-		}
-		else{
-			Inline::Java::debug(2, "classpath candidate '$p' scraped") ;
+			else{
+				Inline::Java::debug(2, "classpath candidate '$p' scraped") ;
+			}
+			delete $cp{$p} ;
 		}
 	}
 
@@ -222,7 +230,7 @@ my $map = {
 		PRE_WHOLE_ARCHIVE	=>  '-Wl',
 		POST_WHOLE_ARCHIVE	=>  '-Wl',
 	    GOT_SYMLINK			=>	1,
-           J2SDK_BIN        	=>  'Commands',
+		J2SDK_BIN        	=>  'Commands',
 		DEFAULT_J2SDK_DIR   =>  '/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK',
 		# Tim Bunce:
 		OTHERLDFLAGS		=>  '-framework JavaVM',
diff --git a/Java/Protocol.pm b/Java/Protocol.pm
index 56e715c..6b72c53 100644
--- a/Java/Protocol.pm
+++ b/Java/Protocol.pm
@@ -10,7 +10,7 @@ BEGIN {
 }
 
 
-$Inline::Java::Protocol::VERSION = '0.53' ;
+$Inline::Java::Protocol::VERSION = '0.53_90' ;
 
 my %CLASSPATH_ENTRIES = () ;
 
diff --git a/Java/Server.pm b/Java/Server.pm
index 59ad7a2..ba5c58f 100644
--- a/Java/Server.pm
+++ b/Java/Server.pm
@@ -13,7 +13,7 @@ require Inline::Java ;
 use File::Spec ;
 
 
-$Inline::Java::Server::VERSION = '0.53' ;
+$Inline::Java::Server::VERSION = '0.53_90' ;
 
 
 # Create a dummy Inline::Java object in order to 
diff --git a/META.yml b/META.yml
index 8382b61..603d1b2 100644
--- a/META.yml
+++ b/META.yml
@@ -1,7 +1,7 @@
 # http://module-build.sourceforge.net/META-spec.html
 #XXXXXXX This is a prototype!!!  It will change in the future!!! XXXXX#
 name:         Inline-Java
-version:      0.53
+version:      0.53_90
 version_from: Java.pm
 installdirs:  site
 requires:
diff --git a/t/03_objects.t b/t/03_objects.t
index d081ecd..83cf1cd 100644
--- a/t/03_objects.t
+++ b/t/03_objects.t
@@ -59,7 +59,6 @@ my $t = new types3() ;
 
 ok($t->__get_private()->{proto}->ObjectCount(), 1) ;
 
-
 __END__
 
 __Java__
diff --git a/t/13_handles.t b/t/13_handles.t
index 9abec99..ee35c49 100755
--- a/t/13_handles.t
+++ b/t/13_handles.t
@@ -46,7 +46,7 @@ if ($t->__get_private()->{proto}->ObjectCount() != 1){
 	warn "\nWARNING: Your Perl version ($]) seems to leak tied filehandles. Using\n" .
 		"Inline::Java::Handle objects will result in memory leaks both in Perl\n" .
 		"and in Java\n" ;
-}
+} 
 
 
 __END__

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-perl/packages/libinline-java-perl.git



More information about the Pkg-perl-cvs-commits mailing list