ports/109647: palm/palm-db-tools: attempt to unbreak
Eric P. Scott
eps+pbug0702 at ana.com
Tue Feb 27 23:00:14 UTC 2007
>Number: 109647
>Category: ports
>Synopsis: palm/palm-db-tools: attempt to unbreak
>Confidential: no
>Severity: serious
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: change-request
>Submitter-Id: current-users
>Arrival-Date: Tue Feb 27 23:00:13 GMT 2007
>Closed-Date:
>Last-Modified:
>Originator: Eric P. Scott
>Release: FreeBSD 6.2-RELEASE i386
>Organization:
ana-systems, Inc.
>Environment:
System: FreeBSD sixofone 6.2-RELEASE FreeBSD 6.2-RELEASE #0: Fri Jan 12 10:40:27 UTC 2007 root at dessler.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC i386
>Description:
1. Port had been marked unconditionally BROKEN, even though build
errors only occurred on 64-bit architectures (upstream assumed
size_t would always fit in unsigned int)
2. Add patch from mailing list to correct writing sort info
>How-To-Repeat:
>Fix:
diff -ruN /usr/ports/palm/palm-db-tools/Makefile palm/palm-db-tools/Makefile
--- /usr/ports/palm/palm-db-tools/Makefile Sat Feb 10 17:23:32 2007
+++ palm/palm-db-tools/Makefile
@@ -15,10 +15,6 @@
MAINTAINER= ijliao at FreeBSD.org
COMMENT= Utilities for the PalmOS flat-file database programs
-BROKEN= Does not build
-DEPRECATED= ${BROKEN}
-EXPIRATION_DATE=2007-04-10
-
WRKSRC= ${WRKDIR}/${PORTNAME}
GNU_CONFIGURE= yes
USE_GMAKE= yes
diff -ruN /usr/ports/palm/palm-db-tools/files/patch-libflatfile-DB.cpp palm/palm-db-tools/files/patch-libflatfile-DB.cpp
--- /usr/ports/palm/palm-db-tools/files/patch-libflatfile-DB.cpp Wed Dec 31 16:00:00 1969
+++ palm/palm-db-tools/files/patch-libflatfile-DB.cpp
@@ -0,0 +1,31 @@
+--- libflatfile/DB.cpp.orig Thu Jun 19 16:37:46 2003
++++ libflatfile/DB.cpp
+@@ -511,7 +511,8 @@
+ f.type = PalmLib::FlatFile::Field::LIST;
+ if (!field(j).argument().empty()) {
+ std::string data = field(j).argument();
+- unsigned int k, pos = 0;
++ unsigned int k;
++ size_t pos = 0;
+ pi_uint16_t itemID = *ptrs[j]; // TR: a list value is stored on 1 byte
+
+ for (k = 0; k < itemID; k++) {
+@@ -716,7 +717,8 @@
+ case PalmLib::FlatFile::Field::LIST:
+ if (!field(i).argument().empty()) {
+ std::string data = field(i).argument();
+- unsigned int pos = 0, next, j = 0;
++ size_t pos = 0, next;
++ unsigned int j = 0;
+ pi_int16_t itemID = -1;
+
+ while ( (next = data.find(charSeperator, pos)) != std::string::npos) {
+@@ -920,7 +922,7 @@
+ if (!field(i).argument().empty()) {
+ std::string data = field(i).argument();
+ std::vector<std::string> items;
+- unsigned int pos = 0, next;
++ size_t pos = 0, next;
+ std::vector<std::string>::iterator iter;
+ size = 2 + 2 * sizeof(pi_uint16_t);
+ while ( (next = data.find(charSeperator, pos)) != std::string::npos) {
diff -ruN /usr/ports/palm/palm-db-tools/files/patch-libpalm-File.cpp palm/palm-db-tools/files/patch-libpalm-File.cpp
--- /usr/ports/palm/palm-db-tools/files/patch-libpalm-File.cpp Wed Dec 31 16:00:00 1969
+++ palm/palm-db-tools/files/patch-libpalm-File.cpp
@@ -0,0 +1,11 @@
+--- libpalm/File.cpp.orig Thu Jun 19 16:37:47 2003
++++ libpalm/File.cpp
+@@ -270,7 +270,7 @@
+ }
+
+ if (m_sort_info.raw_size() > 0) {
+- f.write((char *) m_sort_info.raw_size(), m_sort_info.raw_size());
++ f.write((char *) m_sort_info.raw_data(), m_sort_info.raw_size());
+ if (!f)
+ throw PalmLib::error("unable to write sort info block");
+ }
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list