diff options
author | tnn <tnn> | 2007-05-07 12:42:19 +0000 |
---|---|---|
committer | tnn <tnn> | 2007-05-07 12:42:19 +0000 |
commit | 8aeba02288aab972df97925d6dbd2e977d786b81 (patch) | |
tree | 66cac43816e3748a339a5fa44db2abaceb08dc79 /lang/librep/patches | |
parent | ff345b8052d7f1511cbb8f20f6542e5f88b72736 (diff) | |
download | pkgsrc-8aeba02288aab972df97925d6dbd2e977d786b81.tar.gz |
librep-0.17nb3: Bring in a couple of bugfixes from GNOME svn.
Diffstat (limited to 'lang/librep/patches')
-rw-r--r-- | lang/librep/patches/patch-ad | 12 | ||||
-rw-r--r-- | lang/librep/patches/patch-ae | 15 | ||||
-rw-r--r-- | lang/librep/patches/patch-af | 28 | ||||
-rw-r--r-- | lang/librep/patches/patch-ag | 40 | ||||
-rw-r--r-- | lang/librep/patches/patch-ah | 16 | ||||
-rw-r--r-- | lang/librep/patches/patch-ai | 29 |
6 files changed, 140 insertions, 0 deletions
diff --git a/lang/librep/patches/patch-ad b/lang/librep/patches/patch-ad new file mode 100644 index 00000000000..3bf51b51592 --- /dev/null +++ b/lang/librep/patches/patch-ad @@ -0,0 +1,12 @@ +$NetBSD: patch-ad,v 1.1 2007/05/07 12:42:19 tnn Exp $ + +--- lisp/rep/xml/reader.jl.orig 2007-05-07 14:12:43.000000000 +0200 ++++ lisp/rep/xml/reader.jl +@@ -126,6 +126,7 @@ + (let ((data (substitute-entities (read-string-item stream '(#\>))))) + (or (= (current stream) #\>) + (error "Expected '>' character: %s" stream)) ++ (next stream) + (list '! data))) + + (define (read-tag-body stream) diff --git a/lang/librep/patches/patch-ae b/lang/librep/patches/patch-ae new file mode 100644 index 00000000000..eb65c969a8a --- /dev/null +++ b/lang/librep/patches/patch-ae @@ -0,0 +1,15 @@ +$NetBSD: patch-ae,v 1.1 2007/05/07 12:42:19 tnn Exp $ + +--- src/continuations.c.orig 2007-05-07 14:15:20.000000000 +0200 ++++ src/continuations.c +@@ -458,7 +458,9 @@ save_stack (rep_continuation *c) + + FLUSH_REGISTER_WINDOWS; + +-#if defined (__GNUC__) && !defined (BROKEN_ALPHA_GCC) ++ /* __builtin_frame_address doesn't give the right thing on athlon64 */ ++ ++#if defined (__GNUC__) && !defined (BROKEN_ALPHA_GCC) && !defined (__x86_64) + c->stack_top = __builtin_frame_address (0); + #else + c->stack_top = (char *) &size; diff --git a/lang/librep/patches/patch-af b/lang/librep/patches/patch-af new file mode 100644 index 00000000000..8bd0aee704c --- /dev/null +++ b/lang/librep/patches/patch-af @@ -0,0 +1,28 @@ +$NetBSD: patch-af,v 1.1 2007/05/07 12:42:19 tnn Exp $ + +--- src/ffi.c.orig 2007-05-07 14:17:55.000000000 +0200 ++++ src/ffi.c +@@ -307,9 +307,11 @@ rep_ffi_marshal (unsigned int type_id, r + *(double *)ptr = (double) rep_get_float (value); + return ptr + sizeof (double); + ++#if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE + case FFI_TYPE_LONGDOUBLE: + *(long double *)ptr = (long double) rep_get_float (value); + return ptr + sizeof (long double); ++#endif + + case FFI_TYPE_UINT8: + *(uint8_t *)ptr = (uint8_t) rep_get_long_int (value); +@@ -435,9 +437,11 @@ rep_ffi_demarshal (unsigned int type_id, + *value = rep_make_float (*(double *)ptr, rep_TRUE); + return ptr + sizeof (double); + ++#if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE + case FFI_TYPE_LONGDOUBLE: + *value = rep_make_float (*(long double *)ptr, rep_TRUE); + return ptr + sizeof (long double); ++#endif + + case FFI_TYPE_UINT8: + *value = rep_MAKE_INT (*(uint8_t *)ptr); diff --git a/lang/librep/patches/patch-ag b/lang/librep/patches/patch-ag new file mode 100644 index 00000000000..8287744d743 --- /dev/null +++ b/lang/librep/patches/patch-ag @@ -0,0 +1,40 @@ +$NetBSD: patch-ag,v 1.1 2007/05/07 12:42:19 tnn Exp $ + +--- src/lisp.c.orig 2007-05-07 14:20:07.000000000 +0200 ++++ src/lisp.c +@@ -2493,7 +2493,7 @@ handler. + rep_DECLARE1(error, rep_SYMBOLP); + + on_error = Fsymbol_value (Qbacktrace_on_error, Qt); +- if (on_error == Qt ++ if ((on_error == Qt && error != Qend_of_stream) + || (rep_CONSP(on_error) + && (tmp = Fmemq (error, on_error)) && tmp != Qnil)) + { +@@ -2504,7 +2504,7 @@ handler. + + errlist = Fcons(error, data); + on_error = Fsymbol_value(Qdebug_on_error, Qt); +- if(((on_error != rep_NULL && on_error == Qt) ++ if(((on_error != rep_NULL && on_error == Qt && error != Qend_of_stream) + || (rep_CONSP(on_error) + && (tmp = Fmemq(error, on_error)) && !rep_NILP(tmp)))) + { +@@ -2705,13 +2705,13 @@ ARGLIST had been evaluated or not before + { + char buf[256]; + #ifdef HAVE_SNPRINTF +- snprintf (buf, sizeof (buf), " at %s:%d", ++ snprintf (buf, sizeof (buf), " at %s:%ld", + rep_STR (rep_CAR (origin)), +- rep_INT (rep_CDR (origin))); ++ (long) rep_INT (rep_CDR (origin))); + #else +- sprintf (buf, " at %s:%d", ++ sprintf (buf, " at %s:%ld", + rep_STR (rep_CAR (origin)), +- rep_INT (rep_CDR (origin))); ++ (long) rep_INT (rep_CDR (origin))); + #endif + rep_stream_puts (strm, buf, -1, rep_FALSE); + } diff --git a/lang/librep/patches/patch-ah b/lang/librep/patches/patch-ah new file mode 100644 index 00000000000..d74f813c6b4 --- /dev/null +++ b/lang/librep/patches/patch-ah @@ -0,0 +1,16 @@ +$NetBSD: patch-ah,v 1.1 2007/05/07 12:42:19 tnn Exp $ + +--- src/main.c.orig 2007-05-07 14:21:20.000000000 +0200 ++++ src/main.c +@@ -157,6 +157,11 @@ get_main_options(char *prog_name, int *a + return rep_TRUE; + } + ++/* GCC 4 helpfully inlines this function and breaks the stack check. */ ++#if __GNUC__ >= 4 ++static void check_configuration (int *stack_low) __attribute__ ((noinline)); ++#endif ++ + static void + check_configuration (int *stack_low) + { diff --git a/lang/librep/patches/patch-ai b/lang/librep/patches/patch-ai new file mode 100644 index 00000000000..0d07ab1cb36 --- /dev/null +++ b/lang/librep/patches/patch-ai @@ -0,0 +1,29 @@ +$NetBSD: patch-ai,v 1.1 2007/05/07 12:42:19 tnn Exp $ + +--- src/timers.c.orig 2007-05-07 14:22:37.000000000 +0200 ++++ src/timers.c +@@ -128,7 +128,7 @@ fix_time (long *secs, long *msecs) + *msecs += 1000; + (*secs)--; + } +- while (*msecs > 1000) ++ while (*msecs >= 1000) + { + *msecs -= 1000; + (*secs)++; +@@ -252,6 +252,7 @@ to re-enable it. + t->function = fun; + t->secs = rep_get_long_int (secs); + t->msecs = rep_get_long_int (msecs); ++ fix_time (&t->secs, &t->msecs); + t->next_alloc = allocated_timers; + allocated_timers = t; + insert_timer (t); +@@ -290,6 +291,7 @@ duration. Otherwise, the existing values + { + TIMER(timer)->secs = rep_get_long_int (secs); + TIMER(timer)->msecs = rep_get_long_int (msecs); ++ fix_time (&TIMER (timer)->secs, &TIMER (timer)->msecs); + } + insert_timer (TIMER(timer)); + return timer; |