- Add patch to support String[] returns

This commit is contained in:
Colin Walters 2008-10-15 05:08:44 +00:00
parent 920367dccd
commit 6907483b50
2 changed files with 33 additions and 1 deletions

View File

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

View File

@ -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 <walters@redhat.com> - 3.0.4-10.svn729
- Add patch to support String[] returns
* Wed Oct 01 2008 Colin Walters <walters@redhat.com> - 3.0.4-9.svn729
- Add new patch to support NativeMapped[] which I want