From a4f4342197637938de6b1a835281e7c40136eed5 Mon Sep 17 00:00:00 2001 From: Christophe Rhodes Date: Tue, 20 Jul 2004 10:47:57 +0000 Subject: [PATCH] 0.8.12.43: Fixed build on unithread ... someone had better check that I haven't broken it on threads now... --- BUGS | 14 -------------- NEWS | 9 +++++---- src/runtime/thread.c | 23 +++++++++++------------ version.lisp-expr | 2 +- 4 files changed, 17 insertions(+), 31 deletions(-) diff --git a/BUGS b/BUGS index c382343..f891955 100644 --- a/BUGS +++ b/BUGS @@ -190,20 +190,6 @@ WORKAROUND: e-mail on cmucl-help@cons.org on 2001-01-16 and 2001-01-17 from WHN and Pierre Mai.) -79: - as pointed out by Dan Barlow on sbcl-devel 2000-07-02: - The PICK-TEMPORARY-FILE-NAME utility used by LOAD-FOREIGN uses - an easily guessable temporary filename in a way which might open - applications using LOAD-FOREIGN to hijacking by malicious users - on the same machine. Incantations for doing this safely are - floating around the net in various "how to write secure programs - despite Unix" documents, and it would be good to (1) fix this in - LOAD-FOREIGN, and (2) hunt for any other code which uses temporary - files and make it share the same new safe logic. - - (partially alleviated in sbcl-0.7.9.32 by a fix by Matthew Danish to - make the temporary filename less easily guessable) - 83: RANDOM-INTEGER-EXTRA-BITS=10 may not be large enough for the RANDOM RNG to be high quality near RANDOM-FIXNUM-MAX; it looks as though diff --git a/NEWS b/NEWS index 0045920..0b0ed2d 100644 --- a/NEWS +++ b/NEWS @@ -5,10 +5,11 @@ changes in sbcl-0.8.13 relative to sbcl-0.8.12: if no major problems are found then it is likely that they will be compiled in unconditionally. * major incompatible change: LOAD-FOREIGN and LOAD-1-FOREIGN are now - unsupported operators. To load a shared library into SBCL, use - SB-ALIEN:LOAD-SHARED-OBJECT. To load a non-shared object file, - link it into a shared library outside of SBCL and load it using - SB-ALIEN:LOAD-SHARED-OBJECT. + unsupported operators on all platforms. To load a shared library + into SBCL, use SB-ALIEN:LOAD-SHARED-OBJECT. To load a non-shared + object file, link it into a shared library outside of SBCL and + load it using SB-ALIEN:LOAD-SHARED-OBJECT. (incidentally fixes + bug #79) * minor incompatible change: as threatened around sbcl-0.8.0, the home package of MOP-related symbols is now SB-MOP, not SB-PCL. The symbols are also exported from SB-PCL for backwards diff --git a/src/runtime/thread.c b/src/runtime/thread.c index 0d03ae2..c9558a5 100644 --- a/src/runtime/thread.c +++ b/src/runtime/thread.c @@ -26,8 +26,6 @@ struct thread *all_threads; volatile lispobj all_threads_lock; extern struct interrupt_data * global_interrupt_data; -void get_spinlock(volatile lispobj *word,int value); - int initial_thread_trampoline(struct thread *th) { @@ -277,6 +275,17 @@ void destroy_thread (struct thread *th) 32*SIGSTKSZ); } +struct thread *find_thread_by_pid(pid_t pid) +{ + struct thread *th; + for_each_thread(th) + if(th->pid==pid) return th; + return 0; +} + +#if defined LISP_FEATURE_SB_THREAD +/* This is not needed unless #+SB-THREAD, as there's a trivial null + * unithread definition. */ void reap_dead_threads() { struct thread *th,*next,*prev=0; @@ -304,19 +313,9 @@ void reap_dead_threads() } } - -struct thread *find_thread_by_pid(pid_t pid) -{ - struct thread *th; - for_each_thread(th) - if(th->pid==pid) return th; - return 0; -} - /* These are not needed unless #+SB-THREAD, and since sigwaitinfo() * doesn't seem to be easily available everywhere (OpenBSD...) it's * more trouble than it's worth to compile it when not needed. */ -#if defined LISP_FEATURE_SB_THREAD void block_sigcont(void) { /* don't allow ourselves to receive SIGCONT while we're in the diff --git a/version.lisp-expr b/version.lisp-expr index 016bbd1..998434f 100644 --- a/version.lisp-expr +++ b/version.lisp-expr @@ -17,4 +17,4 @@ ;;; checkins which aren't released. (And occasionally for internal ;;; versions, especially for internal versions off the main CVS ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".) -"0.8.12.42" +"0.8.12.43" -- 1.7.10.4