From 6907483b5071902fbfd407c542fdda7110e44902 Mon Sep 17 00:00:00 2001 From: Colin Walters Date: Wed, 15 Oct 2008 05:08:44 +0000 Subject: [PATCH] - Add patch to support String[] returns --- jna-stringarray-return.patch | 26 ++++++++++++++++++++++++++ jna.spec | 8 +++++++- 2 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 jna-stringarray-return.patch diff --git a/jna-stringarray-return.patch b/jna-stringarray-return.patch new file mode 100644 index 0000000..c806e79 --- /dev/null +++ b/jna-stringarray-return.patch @@ -0,0 +1,26 @@ +diff -ur jna-3.0.4-svn729/src/com/sun/jna/Function.java jna-3.0.4-svn729.orig/src/com/sun/jna/Function.java +--- jna-3.0.4-svn729/src/com/sun/jna/Function.java 2008-10-14 19:47:44.000000000 -0400 ++++ jna-3.0.4-svn729.orig/src/com/sun/jna/Function.java 2008-10-14 19:48:00.000000000 -0400 +@@ -314,6 +314,20 @@ + String s = invokeString(callingConvention, args, true); + result = s != null ? new WString(s) : null; + } ++ else if (returnType == String[].class) { ++ Pointer tmp = invokePointer(callingConvention, args); ++ if (tmp != null) ++ result = tmp.getStringArray(0); ++ else ++ result = null; ++ } ++ else if (returnType == WString[].class) { ++ Pointer tmp = invokePointer(callingConvention, args); ++ if (tmp != null) ++ result = tmp.getStringArray(0, true); ++ else ++ result = null; ++ } + else if (Pointer.class.isAssignableFrom(returnType)) { + result = invokePointer(callingConvention, args); + } +Only in jna-3.0.4-svn729.orig/src/com/sun/jna: Function.java~ +Only in jna-3.0.4-svn729/src/com/sun/jna: Function.java.nativemapped-array diff --git a/jna.spec b/jna.spec index 67d9cea..38ed5d8 100644 --- a/jna.spec +++ b/jna.spec @@ -1,6 +1,6 @@ Name: jna Version: 3.0.4 -Release: 9.svn729%{?dist} +Release: 10.svn729%{?dist} Summary: Pure Java access to native libraries Group: Development/Libraries @@ -21,6 +21,8 @@ Patch1: jna-3.0.2-loadlibrary.patch Patch2: jna-tests-headless.patch # https://jna.dev.java.net/issues/show_bug.cgi?id=90 Patch3: jna-3.0.4-nativemapped-array.patch +# https://jna.dev.java.net/issues/show_bug.cgi?id=XXX +Patch4: jna-stringarray-return.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: java-devel >= 1.6 ant jpackage-utils ant-nodeps @@ -53,6 +55,7 @@ This package contains the javadocs for %{name}. sed -e 's|@JNIPATH@|%{_libdir}/%{name}|' %{PATCH1} | patch -p1 %patch2 -p1 -b .tests-headless %patch3 -p1 -b .nativemapped-array +%patch4 -p1 -b .stringarray-return # all java binaries must be removed from the sources find . -name '*.jar' -exec rm -f '{}' \; @@ -109,6 +112,9 @@ rm -rf %{buildroot} %changelog +* Tue Oct 14 2008 Colin Walters - 3.0.4-10.svn729 +- Add patch to support String[] returns + * Wed Oct 01 2008 Colin Walters - 3.0.4-9.svn729 - Add new patch to support NativeMapped[] which I want