aboutsummaryrefslogtreecommitdiffstats
path: root/lang
diff options
context:
space:
mode:
authorpav <pav@FreeBSD.org>2005-11-17 20:58:03 +0800
committerpav <pav@FreeBSD.org>2005-11-17 20:58:03 +0800
commit9d0d16a2adf5e31f1f57d087ee74104eb35e190d (patch)
treed347fc87ebcc9228f512a02d9b3451d6f670bf1e /lang
parent5ab17a19bd84de25134cd3f29c609b731886c1fd (diff)
downloadfreebsd-ports-gnome-9d0d16a2adf5e31f1f57d087ee74104eb35e190d.tar.gz
freebsd-ports-gnome-9d0d16a2adf5e31f1f57d087ee74104eb35e190d.tar.zst
freebsd-ports-gnome-9d0d16a2adf5e31f1f57d087ee74104eb35e190d.zip
- Update to 7.6.50
PR: ports/89127 Submitted by: Xavier Beaudouin <kiwi@oav.net> (maintainer)
Diffstat (limited to 'lang')
-rw-r--r--lang/pike76/Makefile6
-rw-r--r--lang/pike76/distinfo5
-rw-r--r--lang/pike76/files/patch-lib-modules-Parser.pmod-XML.pmod-Tree.pmod68
-rw-r--r--lang/pike76/files/patch-modules-Odbc-odbc_result.c73
-rw-r--r--lang/pike76/files/patch-threads.c30
5 files changed, 177 insertions, 5 deletions
diff --git a/lang/pike76/Makefile b/lang/pike76/Makefile
index 95f7a340448d..0ace3b3847bf 100644
--- a/lang/pike76/Makefile
+++ b/lang/pike76/Makefile
@@ -6,7 +6,7 @@
#
PORTNAME= pike76
-PORTVERSION= 7.6.48
+PORTVERSION= 7.6.50
CATEGORIES= lang
MASTER_SITES= ftp://pike.ida.liu.se/pub/pike/beta/${PORTVERSION}/ \
ftp://pike.ida.liu.se/pub/pike/all/${PORTVERSION}/ \
@@ -240,8 +240,8 @@ post-install:
${INSTALL_SCRIPT} ${WRKSRC}/bin/hilfe ${PREFIX}/bin
${INSTALL_MAN} ${WRKSRC}/man/pike.1 ${MAN1PREFIX}/man/man1
-#verify:
-# @(cd ${WRKSRC}; make verify)
+verify:
+ @(cd ${WRKSRC}; make verify)
# Autodocs is currently b0rken.... :/
#doc:
diff --git a/lang/pike76/distinfo b/lang/pike76/distinfo
index 16b5758ca9e9..aefade1fa1db 100644
--- a/lang/pike76/distinfo
+++ b/lang/pike76/distinfo
@@ -1,2 +1,3 @@
-MD5 (Pike-v7.6.48.tar.gz) = 9a822abed615f150566e267847fa7ec9
-SIZE (Pike-v7.6.48.tar.gz) = 17477493
+MD5 (Pike-v7.6.50.tar.gz) = 20aa2b8ff088733b6c5fc048d47aa712
+SHA256 (Pike-v7.6.50.tar.gz) = 0282adfcdc43dc7feced18415ce165ffc1a1ea288cfb9b343368b170f6445711
+SIZE (Pike-v7.6.50.tar.gz) = 17521150
diff --git a/lang/pike76/files/patch-lib-modules-Parser.pmod-XML.pmod-Tree.pmod b/lang/pike76/files/patch-lib-modules-Parser.pmod-XML.pmod-Tree.pmod
new file mode 100644
index 000000000000..207094700710
--- /dev/null
+++ b/lang/pike76/files/patch-lib-modules-Parser.pmod-XML.pmod-Tree.pmod
@@ -0,0 +1,68 @@
+--- lib/modules/Parser.pmod/XML.pmod/Tree.pmod.old Wed Nov 16 12:29:10 2005
++++ lib/modules/Parser.pmod/XML.pmod/Tree.pmod Wed Nov 16 12:29:14 2005
+@@ -1,7 +1,7 @@
+ #pike __REAL_VERSION__
+
+ /*
+- * $Id: Tree.pmod,v 1.53 2004/12/21 16:07:07 grubba Exp $
++ * $Id: Tree.pmod,v 1.54 2005/11/07 14:21:17 nilsson Exp $
+ *
+ */
+
+@@ -757,11 +757,15 @@
+ //!
+ static void create(int type, string name, mapping attr, string text)
+ {
+- if (name) {
++ if (name && has_value(name, ":")) {
+ sscanf(reverse(name), "%[^/:]", mTagName);
+ mTagName=reverse(mTagName);
+ mNamespace=name[..sizeof(name)-(1+sizeof(mTagName))];
+ }
++ else {
++ mTagName = name;
++ mNamespace = "";
++ }
+ mNodeType = type;
+ // mTagCode = kTagMapping[name] || kUnsupportedTagMapping[name];
+ mAttributes = attr;
+@@ -1447,25 +1451,27 @@
+ // the W3 spec. This is necessary since CDATA sections are
+ // converted to text nodes which might need to be concatenated
+ // with neighboring text nodes.
++
+ Node text_node;
+- foreach(contents, Node child) {
++ int(0..1) modified;
++
++ foreach(contents; int i; Node child) {
+ if (child->get_node_type() == XML_TEXT) {
+- if (text_node)
++ if (text_node) {
+ // Add this text string to the previous text node.
+ text_node->_add_to_text (child->get_text());
++ contents[i]=0;
++ modified=1;
++ }
+ else
+ text_node = child;
+- } else {
+- // Process buffered text before this child is added
+- if (text_node) {
+- node->add_child(text_node);
+- text_node = 0;
+- }
+- node->add_child(child);
+- }
++ } else
++ text_node = 0;
+ }
+- if (text_node)
+- node->add_child(text_node);
++
++ if( modified )
++ contents -= ({ 0 });
++ node->replace_children( contents );
+ return (node);
+
+ case "error":
diff --git a/lang/pike76/files/patch-modules-Odbc-odbc_result.c b/lang/pike76/files/patch-modules-Odbc-odbc_result.c
new file mode 100644
index 000000000000..3e4d39ede5d9
--- /dev/null
+++ b/lang/pike76/files/patch-modules-Odbc-odbc_result.c
@@ -0,0 +1,73 @@
+--- src/modules/Odbc/odbc_result.c.old Wed Nov 16 10:55:43 2005
++++ src/modules/Odbc/odbc_result.c Wed Nov 16 10:55:48 2005
+@@ -2,7 +2,7 @@
+ || This file is part of Pike. For copyright information see COPYRIGHT.
+ || Pike is distributed under GPL, LGPL and MPL. See the file COPYING
+ || for more information.
+-|| $Id: odbc_result.c,v 1.37 2003/05/02 12:54:37 grubba Exp $
++|| $Id: odbc_result.c,v 1.38 2005/11/09 13:12:35 grubba Exp $
+ */
+
+ /*
+@@ -21,7 +21,7 @@
+ #include "config.h"
+ #endif /* HAVE_CONFIG_H */
+
+-RCSID("$Id: odbc_result.c,v 1.37 2003/05/02 12:54:37 grubba Exp $");
++RCSID("$Id: odbc_result.c,v 1.38 2005/11/09 13:12:35 grubba Exp $");
+
+ #include "interpret.h"
+ #include "object.h"
+@@ -442,6 +442,18 @@
+ push_int(0);
+ }
+ break;
++ } else if (code == SQL_SUCCESS_WITH_INFO) {
++ /* Data truncated. */
++ num_strings++;
++#ifdef ODBC_DEBUG
++ fprintf(stderr, "[%d] ", num_strings);
++#endif /* ODBC_DEBUG */
++ if (PIKE_ODBC_RES->field_info[i].type == SQL_C_BINARY) {
++ push_string(make_shared_binary_string(blob_buf, BLOB_BUFSIZ));
++ } else {
++ /* SQL_C_CHAR's are NUL-terminated... */
++ push_string(make_shared_binary_string(blob_buf, BLOB_BUFSIZ - 1));
++ }
+ } else {
+ num_strings++;
+ #ifdef ODBC_DEBUG
+@@ -453,15 +465,27 @@
+ #endif /* SQL_NO_TOTAL */
+ ) {
+ push_string(make_shared_binary_string(blob_buf, len));
+- break;
+ } else {
+- if (PIKE_ODBC_RES->field_info[i].type == SQL_C_BINARY) {
+- push_string(make_shared_binary_string(blob_buf, BLOB_BUFSIZ));
+- } else {
+- /* SQL_C_CHAR's are NUL-terminated... */
+- push_string(make_shared_binary_string(blob_buf, BLOB_BUFSIZ - 1));
++ /* Truncated, but no support for chained SQLGetData calls. */
++ char *buf = xalloc(len+2);
++ SQLLEN newlen = 0;
++ code = SQLGetData(PIKE_ODBC_RES->hstmt, (SQLUSMALLINT)(i+1),
++ PIKE_ODBC_RES->field_info[i].type,
++ buf, len+1, &newlen);
++ if (code != SQL_SUCCESS) {
++ Pike_error("odbc->fetch_row(): "
++ "Unexpected code from SQLGetData(): %d\n",
++ code);
+ }
++ if (len != newlen) {
++ Pike_error("odbc->fetch_row(): "
++ "Unexpected length from SQLGetData(): "
++ "%d (expected %d)\n", newlen, len);
++ }
++ push_string(make_shared_binary_string(buf, len));
++ free(buf);
+ }
++ break;
+ }
+ }
+ if (num_strings > 1) {
diff --git a/lang/pike76/files/patch-threads.c b/lang/pike76/files/patch-threads.c
new file mode 100644
index 000000000000..b5fe8507c97e
--- /dev/null
+++ b/lang/pike76/files/patch-threads.c
@@ -0,0 +1,30 @@
+--- src/threads.c.old Wed Nov 16 10:58:57 2005
++++ src/threads.c Wed Nov 16 10:59:00 2005
+@@ -2,12 +2,12 @@
+ || This file is part of Pike. For copyright information see COPYRIGHT.
+ || Pike is distributed under GPL, LGPL and MPL. See the file COPYING
+ || for more information.
+-|| $Id: threads.c,v 1.238 2005/05/18 12:36:54 mast Exp $
++|| $Id: threads.c,v 1.239 2005/11/15 10:31:56 grubba Exp $
+ */
+
+ #ifndef CONFIGURE_TEST
+ #include "global.h"
+-RCSID("$Id: threads.c,v 1.238 2005/05/18 12:36:54 mast Exp $");
++RCSID("$Id: threads.c,v 1.239 2005/11/15 10:31:56 grubba Exp $");
+
+ PMOD_EXPORT int num_threads = 1;
+ PMOD_EXPORT int threads_disabled = 0;
+@@ -1460,9 +1460,10 @@
+ THIS_KEY->mutex_obj = NULL;
+ if (mut->num_waiting)
+ co_signal(&mut->condition);
+- else if (!mutex_obj->prog)
++ else if (mutex_obj && !mutex_obj->prog)
+ co_destroy (&mut->condition);
+- free_object(mutex_obj);
++ if (mutex_obj)
++ free_object(mutex_obj);
+ }
+ }
+