rpms/openoffice.org/devel openoffice.org-1.9.104-berkeleydb-jni-casting-misuse.patch, NONE, 1.1 openoffice.org.spec, 1.192, 1.193
fedora-cvs-commits at redhat.com
fedora-cvs-commits at redhat.com
Mon May 23 19:27:47 UTC 2005
Author: dcbw
Update of /cvs/dist/rpms/openoffice.org/devel
In directory cvs.devel.redhat.com:/tmp/cvs-serv13564
Modified Files:
openoffice.org.spec
Added Files:
openoffice.org-1.9.104-berkeleydb-jni-casting-misuse.patch
Log Message:
- add openoffice.org-1.9.104-berkeleydb-jni-casting-misuse.patch to fix grievous
misuse of C casting in berkeleydb's JNI glue
openoffice.org-1.9.104-berkeleydb-jni-casting-misuse.patch:
db-4.2.52.patch | 3536 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 3535 insertions(+), 1 deletion(-)
--- NEW FILE openoffice.org-1.9.104-berkeleydb-jni-casting-misuse.patch ---
--- SRC680_m104/berkeleydb/db-4.2.52.patch.jni-casting-misuse 2005-05-23 14:12:18.000000000 -0400
+++ SRC680_m104/berkeleydb/db-4.2.52.patch 2005-05-23 14:56:09.000000000 -0400
@@ -317,8 +317,3541 @@
! SLOFILES= $(SLO)$/hsearch.obj
!
! .INCLUDE : target.mk
-*** misc/db-4.2.52.NC/libdb_java/makefile.mk 2005-04-07 17:09:42.000000000 +0200
---- misc/build/db-4.2.52.NC/libdb_java/makefile.mk 2005-04-07 17:09:09.000000000 +0200
+*** misc/db-4.2.52.NC/libdb_java/db_java_wrap.c 2003-12-03 16:10:36.000000000 -0500
+--- misc/build/db-4.2.52.NC/libdb_java/db_java_wrap.c 2005-05-23 14:54:42.000000000 -0400
+***************
+*** 371,377 ****
+ memset(lsn_copy, 0, sizeof(DB_LSN));
+ *lsn_copy = *lsn;
+ /* Magic to convert a pointer to a long - must match SWIG */
+! *(DB_LSN **)&jptr = lsn_copy;
+ return (*jenv)->NewObject(jenv, dblsn_class, dblsn_construct,
+ jptr, JNI_TRUE);
+ }
+--- 371,378 ----
+ memset(lsn_copy, 0, sizeof(DB_LSN));
+ *lsn_copy = *lsn;
+ /* Magic to convert a pointer to a long - must match SWIG */
+! jptr = (intptr_t) lsn_copy;
+! /* *(DB_LSN **)&jptr = lsn_copy; */
+ return (*jenv)->NewObject(jenv, dblsn_class, dblsn_construct,
+ jptr, JNI_TRUE);
+ }
+***************
+*** 632,638 ****
+ int completed;
+
+ COMPQUIET(jcls, NULL);
+! dbenv = *(DB_ENV **)&jdbenvp;
+ jdbenv = (jobject)DB_ENV_INTERNAL(dbenv);
+
+ if (dbenv == NULL) {
+--- 633,640 ----
+ int completed;
+
+ COMPQUIET(jcls, NULL);
+! dbenv = (DB_ENV *)((intptr_t)jdbenvp);
+! /* dbenv = *(DB_ENV **)&jdbenvp; */
+ jdbenv = (jobject)DB_ENV_INTERNAL(dbenv);
+
+ if (dbenv == NULL) {
+***************
+*** 701,707 ****
+ "DbLockRequest lock field is NULL", NULL, jdbenv);
+ goto out2;
+ }
+! lockp = *(DB_LOCK **)&jlockp;
+ prereq->lock = *lockp;
+ break;
+ case DB_LOCK_PUT_ALL:
+--- 703,710 ----
+ "DbLockRequest lock field is NULL", NULL, jdbenv);
+ goto out2;
+ }
+! lockp = (DB_LOCK *)((intptr_t)jlockp);
+! /* lockp = *(DB_LOCK **)&jlockp; */
+ prereq->lock = *lockp;
+ break;
+ case DB_LOCK_PUT_ALL:
+***************
+*** 745,751 ****
+ lockreq_lock_fid);
+ jlockp = (*jenv)->GetLongField(jenv, jlock,
+ lock_cptr_fid);
+! lockp = *(DB_LOCK **)&jlockp;
+ __os_free(NULL, lockp);
+ (*jenv)->SetLongField(jenv, jlock, lock_cptr_fid,
+ (jlong)0);
+--- 748,755 ----
+ lockreq_lock_fid);
+ jlockp = (*jenv)->GetLongField(jenv, jlock,
+ lock_cptr_fid);
+! lockp = (DB_LOCK *)((intptr_t)jlockp);
+! /* lockp = *(DB_LOCK **)&jlockp; */
+ __os_free(NULL, lockp);
+ (*jenv)->SetLongField(jenv, jlock, lock_cptr_fid,
+ (jlong)0);
+***************
+*** 763,769 ****
+ }
+
+ *lockp = lockreq[i].lock;
+! *(DB_LOCK **)&jlockp = lockp;
+
+ jlockreq = (*jenv)->GetObjectArrayElement(jenv,
+ list, i + offset);
+--- 767,774 ----
+ }
+
+ *lockp = lockreq[i].lock;
+! jlockp = (intptr_t)lockp;
+! /* *(DB_LOCK **)&jlockp = lockp; */
+
+ jlockreq = (*jenv)->GetObjectArrayElement(jenv,
+ list, i + offset);
+***************
+*** 1194,1200 ****
+
+ JNIEXPORT jobject JNICALL Java_com_sleepycat_db_db_1javaJNI_initDbEnvRef0(
+ JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg2) {
+! DB_ENV *self = *(DB_ENV **)&jarg1;
+ COMPQUIET(jcls, NULL);
+
+ DB_ENV_INTERNAL(self) = (void *)(*jenv)->NewGlobalRef(jenv, jarg2);
+--- 1199,1206 ----
+
+ JNIEXPORT jobject JNICALL Java_com_sleepycat_db_db_1javaJNI_initDbEnvRef0(
+ JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg2) {
+! DB_ENV *self = (DB_ENV *)((intptr_t)jarg1);
+! /* DB_ENV *self = *(DB_ENV **)&jarg1; */
+ COMPQUIET(jcls, NULL);
+
+ DB_ENV_INTERNAL(self) = (void *)(*jenv)->NewGlobalRef(jenv, jarg2);
+***************
+*** 1204,1210 ****
+
+ JNIEXPORT jobject JNICALL Java_com_sleepycat_db_db_1javaJNI_initDbRef0(
+ JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg2) {
+! DB *self = *(DB **)&jarg1;
+ COMPQUIET(jcls, NULL);
+
+ DB_INTERNAL(self) = (void *)(*jenv)->NewGlobalRef(jenv, jarg2);
+--- 1210,1217 ----
+
+ JNIEXPORT jobject JNICALL Java_com_sleepycat_db_db_1javaJNI_initDbRef0(
+ JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg2) {
+! DB *self = (DB *)((intptr_t)jarg1);
+! /* DB *self = *(DB **)&jarg1; */
+ COMPQUIET(jcls, NULL);
+
+ DB_INTERNAL(self) = (void *)(*jenv)->NewGlobalRef(jenv, jarg2);
+***************
+*** 1221,1227 ****
+
+ JNIEXPORT jobject JNICALL Java_com_sleepycat_db_db_1javaJNI_getDbRef0(
+ JNIEnv *jenv, jclass jcls, jlong jarg1) {
+! DB *self = *(DB **)&jarg1;
+ COMPQUIET(jcls, NULL);
+ COMPQUIET(jenv, NULL);
+
+--- 1228,1235 ----
+
+ JNIEXPORT jobject JNICALL Java_com_sleepycat_db_db_1javaJNI_getDbRef0(
+ JNIEnv *jenv, jclass jcls, jlong jarg1) {
+! DB *self = (DB *)((intptr_t)jarg1);
+! /* DB *self = *(DB **)&jarg1; */
+ COMPQUIET(jcls, NULL);
+ COMPQUIET(jenv, NULL);
+
+***************
+*** 1230,1242 ****
+
+ JNIEXPORT jlong JNICALL Java_com_sleepycat_db_db_1javaJNI_getDbEnv0(
+ JNIEnv *jenv, jclass jcls, jlong jarg1) {
+! DB *self = *(DB **)&jarg1;
+ jlong env_cptr;
+
+ COMPQUIET(jenv, NULL);
+ COMPQUIET(jcls, NULL);
+
+! *(DB_ENV **)&env_cptr = self->dbenv;
+ return env_cptr;
+ }
+
+--- 1238,1252 ----
+
+ JNIEXPORT jlong JNICALL Java_com_sleepycat_db_db_1javaJNI_getDbEnv0(
+ JNIEnv *jenv, jclass jcls, jlong jarg1) {
+! DB *self = (DB *)((intptr_t)jarg1);
+! /* DB *self = *(DB **)&jarg1; */
+ jlong env_cptr;
+
+ COMPQUIET(jenv, NULL);
+ COMPQUIET(jcls, NULL);
+
+! env_cptr = (jlong)((intptr_t)(self->dbenv));
+! /* *(DB_ENV **)&env_cptr = self->dbenv; */
+ return env_cptr;
+ }
+
+***************
+*** 1997,2003 ****
+
+ (void)jenv;
+ (void)jcls;
+! arg1 = *(DB_ENV **)&jarg1;
+ arg2 = (u_int32_t)jarg2;
+
+ errno = 0;
+--- 2007,2014 ----
+
+ (void)jenv;
+ (void)jcls;
+! arg1 = (DB_ENV *)((intptr_t)jarg1);
[...3147 lines suppressed...]
+ (void)jenv;
+ (void)jcls;
+! arg1 = *(struct __db_lock_u **)&jarg1;
+
+ if (jarg1 == 0) {
+ __dbj_throw(jenv, EINVAL, "call on closed handle", NULL, NULL);
+--- 7273,7280 ----
+
+ (void)jenv;
+ (void)jcls;
+! arg1 = (struct __db_lock_u *)((intptr_t)jarg1);
+! /* arg1 = *(struct __db_lock_u **)&jarg1; */
+
+ if (jarg1 == 0) {
+ __dbj_throw(jenv, EINVAL, "call on closed handle", NULL, NULL);
+***************
+*** 7098,7104 ****
+ if (!DB_RETOK_STD(errno))
+ __dbj_throw(jenv, errno, NULL, NULL, NULL);
+
+! *(struct __db_lsn **)&jresult = result;
+ return jresult;
+ }
+
+--- 7303,7310 ----
+ if (!DB_RETOK_STD(errno))
+ __dbj_throw(jenv, errno, NULL, NULL, NULL);
+
+! jresult = (jlong)((intptr_t)result);
+! /* *(struct __db_lsn **)&jresult = result; */
+ return jresult;
+ }
+
+***************
+*** 7108,7114 ****
+
+ (void)jenv;
+ (void)jcls;
+! arg1 = *(struct __db_lsn **)&jarg1;
+
+ if (jarg1 == 0) {
+ __dbj_throw(jenv, EINVAL, "call on closed handle", NULL, NULL);
+--- 7314,7321 ----
+
+ (void)jenv;
+ (void)jcls;
+! arg1 = (struct __db_lsn *)((intptr_t)jarg1);
+! /* arg1 = *(struct __db_lsn **)&jarg1; */
+
+ if (jarg1 == 0) {
+ __dbj_throw(jenv, EINVAL, "call on closed handle", NULL, NULL);
+***************
+*** 7127,7133 ****
+
+ (void)jenv;
+ (void)jcls;
+! arg1 = *(struct __db_lsn **)&jarg1;
+
+ if (jarg1 == 0) {
+ __dbj_throw(jenv, EINVAL, "call on closed handle", NULL, NULL);
+--- 7334,7341 ----
+
+ (void)jenv;
+ (void)jcls;
+! arg1 = (struct __db_lsn *)((intptr_t)jarg1);
+! /* arg1 = *(struct __db_lsn **)&jarg1; */
+
+ if (jarg1 == 0) {
+ __dbj_throw(jenv, EINVAL, "call on closed handle", NULL, NULL);
+***************
+*** 7148,7154 ****
+
+ (void)jenv;
+ (void)jcls;
+! arg1 = *(struct __db_lsn **)&jarg1;
+
+ if (jarg1 == 0) {
+ __dbj_throw(jenv, EINVAL, "call on closed handle", NULL, NULL);
+--- 7356,7363 ----
+
+ (void)jenv;
+ (void)jcls;
+! arg1 = (struct __db_lsn *)((intptr_t)jarg1);
+! /* arg1 = *(struct __db_lsn **)&jarg1; */
+
+ if (jarg1 == 0) {
+ __dbj_throw(jenv, EINVAL, "call on closed handle", NULL, NULL);
+***************
+*** 7169,7175 ****
+
+ (void)jenv;
+ (void)jcls;
+! arg1 = *(struct __db_mpoolfile **)&jarg1;
+
+ if (jarg1 == 0) {
+ __dbj_throw(jenv, EINVAL, "call on closed handle", NULL, NULL);
+--- 7378,7385 ----
+
+ (void)jenv;
+ (void)jcls;
+! arg1 = (struct __db_mpoolfile *)((intptr_t)jarg1);
+! /* arg1 = *(struct __db_mpoolfile **)&jarg1; */
+
+ if (jarg1 == 0) {
+ __dbj_throw(jenv, EINVAL, "call on closed handle", NULL, NULL);
+***************
+*** 7195,7201 ****
+
+ (void)jenv;
+ (void)jcls;
+! arg1 = *(struct __db_mpoolfile **)&jarg1;
+ arg2 = (DB_CACHE_PRIORITY)jarg2;
+
+ if (jarg1 == 0) {
+--- 7405,7412 ----
+
+ (void)jenv;
+ (void)jcls;
+! arg1 = (struct __db_mpoolfile *)((intptr_t)jarg1);
+! /* arg1 = *(struct __db_mpoolfile **)&jarg1; */
+ arg2 = (DB_CACHE_PRIORITY)jarg2;
+
+ if (jarg1 == 0) {
+***************
+*** 7219,7225 ****
+
+ (void)jenv;
+ (void)jcls;
+! arg1 = *(struct __db_mpoolfile **)&jarg1;
+
+ if (jarg1 == 0) {
+ __dbj_throw(jenv, EINVAL, "call on closed handle", NULL, NULL);
+--- 7430,7437 ----
+
+ (void)jenv;
+ (void)jcls;
+! arg1 = (struct __db_mpoolfile *)((intptr_t)jarg1);
+! /* arg1 = *(struct __db_mpoolfile **)&jarg1; */
+
+ if (jarg1 == 0) {
+ __dbj_throw(jenv, EINVAL, "call on closed handle", NULL, NULL);
+***************
+*** 7246,7252 ****
+
+ (void)jenv;
+ (void)jcls;
+! arg1 = *(struct __db_mpoolfile **)&jarg1;
+ arg2 = (u_int32_t)jarg2;
+
+ arg3 = (jarg3 == JNI_TRUE);
+--- 7458,7465 ----
+
+ (void)jenv;
+ (void)jcls;
+! arg1 = (struct __db_mpoolfile *)((intptr_t)jarg1);
+! /* arg1 = *(struct __db_mpoolfile **)&jarg1; */
+ arg2 = (u_int32_t)jarg2;
+
+ arg3 = (jarg3 == JNI_TRUE);
+***************
+*** 7273,7279 ****
+
+ (void)jenv;
+ (void)jcls;
+! arg1 = *(struct __db_mpoolfile **)&jarg1;
+
+ if (jarg1 == 0) {
+ __dbj_throw(jenv, EINVAL, "call on closed handle", NULL, NULL);
+--- 7486,7493 ----
+
+ (void)jenv;
+ (void)jcls;
+! arg1 = (struct __db_mpoolfile *)((intptr_t)jarg1);
+! /* arg1 = *(struct __db_mpoolfile **)&jarg1; */
+
+ if (jarg1 == 0) {
+ __dbj_throw(jenv, EINVAL, "call on closed handle", NULL, NULL);
+***************
+*** 7299,7305 ****
+
+ (void)jenv;
+ (void)jcls;
+! arg1 = *(struct __db_mpoolfile **)&jarg1;
+ arg2 = jarg2;
+
+ if (jarg1 == 0) {
+--- 7513,7520 ----
+
+ (void)jenv;
+ (void)jcls;
+! arg1 = (struct __db_mpoolfile *)((intptr_t)jarg1);
+! /* arg1 = *(struct __db_mpoolfile **)&jarg1; */
+ arg2 = jarg2;
+
+ if (jarg1 == 0) {
+*** misc/db-4.2.52.NC/libdb_java/makefile.mk 2005-05-23 14:56:08.000000000 -0400
+--- misc/build/db-4.2.52.NC/libdb_java/makefile.mk 2005-05-23 14:12:27.000000000 -0400
***************
*** 1 ****
! dummy
Index: openoffice.org.spec
===================================================================
RCS file: /cvs/dist/rpms/openoffice.org/devel/openoffice.org.spec,v
retrieving revision 1.192
retrieving revision 1.193
diff -u -r1.192 -r1.193
--- openoffice.org.spec 23 May 2005 01:25:08 -0000 1.192
+++ openoffice.org.spec 23 May 2005 19:27:44 -0000 1.193
@@ -34,8 +34,6 @@
Source5: GSI_pa-IN.sdf
Source6: GSI_nn.sdf
Source7: GSI_nb.sdf
-Source8: db-3.2.9.patch
-Source9: db-3.2.9.tar.gz
BuildRequires: perl, sed, zip, bzip2, unzip, tar, findutils
BuildRequires: autoconf, make >= 3.79.1, ant, flex, bison, perl-Compress-Zlib
BuildRequires: gcc >= %{gccver}, gcc-c++ >= %{gccver}, binutils
@@ -76,11 +74,9 @@
Patch21: openoffice.org-1.9.89.oooXXXXX.upstreamhatesthefp.officecfg.patch
Patch22: openoffice.org-1.9.89.rh152269.nfs.desktop.patch
Patch23: openoffice.org-1.9.89.gccXXXXX.hsqldbproblems.hsqldb.patch
-Patch24: workspace.db4.patch
Patch25: openoffice.org-1.9.91.oooXXXXX.fontfallbacks.officecfg.patch
Patch26: openoffice.org-1.9.90.ooo46585.sunmiscisnotstandard.filter.patch
Patch27: openoffice.org-1.9.92.oooXXXXX.addindic.patch
-Patch28: workspace.db4-2.patch
Patch29: openoffice.org-1.9.92.oooXXXXX.gtk-nwf-combo-box-button-fix.patch
Patch30: openoffice.org-1.9.96.ooo35641.noxfonts.vcl.patch
Patch31: openoffice.org-1.9.97.ooo48256.nolongname.sysui.patch
@@ -93,6 +89,7 @@
Patch38: openoffice.org-1.9.103.oooXXXXX.installation.disable-epm.fix.patch
Patch39: openoffice.org-1.9.104.oooXXXXX.indic-font-fallbacks.patch
Patch40: openoffice.org-1.9.104-gcjawt.patch
+Patch41: openoffice.org-1.9.104-berkeleydb-jni-casting-misuse.patch
%define instdir %{_libdir}/openoffice.org%{version}
@@ -684,11 +681,9 @@
%patch21 -p1 -b .oooXXXXX.upstreamhatesthefp.officecfg.patch
%patch22 -p1 -b .rh152269.nfs.desktop.patch
%patch23 -p1 -b .gccXXXXX.hsqldbproblems.hsqldb.patch
-#%patch24 -p1 -R -b .workspace.db4.patch
%patch25 -p1 -b .oooXXXXX.fontfallbacks.officecfg.patch
%patch26 -p1 -b .ooo46585.sunmiscisnotstandard.filter.patch
%patch27 -p1 -b .oooXXXXX.addindic.patch
-#%patch28 -p1 -b .workspace.db4-2.patch
%patch29 -p1 -b .oooXXXXX.gtk-nwf-combo-box-button-fix.patch
%patch30 -p1 -b .ooo35641.noxfonts.vcl.patch
%patch31 -p1 -b .ooo48256.nolongname.sysui.patch
@@ -701,6 +696,7 @@
%patch38 -p1 -b .oooXXXXX.installation.disable-epm.fix.patch
%patch39 -p1 -b .oooXXXXX.indic-font-fallbacks.patch
%patch40 -p1 -b .gcjawt.patch
+%patch41 -p1 -b .berkeleydb-jni-casting-misuse.patch
#start ludicrous workaround
#while we include these libs we need this, if/when we move to system
@@ -764,8 +760,6 @@
export GCJ_CFLAGS="-I`$JAVACOMPILER -print-search-dirs | grep install | awk ' { print $2 } '`""include"
export GCJ_LDFLAGS="-L`$JAVACOMPILER -print-search-dirs | grep install | awk ' { print $2 } '`"
%endif
-cp %{SOURCE8} berkeleydb
-cp %{SOURCE9} berkeleydb/download
cd transex3/prj
build --all -P$MAXBUILDS
deliver
@@ -2503,6 +2497,8 @@
db4 with gcc again
- add openoffice.org-1.9.104-gcjawt.patch to deal with gcj AWT library change
to libgcjawt.so
+- add openoffice.org-1.9.104-berkeleydb-jni-casting-misuse.patch to fix grievous
+ misuse of C casting in berkeleydb's JNI glue
* Thu May 19 2005 Dan Williams <dcbw at redhat.com> - 1:1.9.104-1
- update to m104
More information about the fedora-cvs-commits
mailing list