chicken-hackers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Chicken-hackers] [PATCH] * scheduler.scm: import chicken.condition for


From: megane
Subject: [Chicken-hackers] [PATCH] * scheduler.scm: import chicken.condition for 'signal' used in ##sys#default-exception-handler
Date: Sun, 21 Oct 2018 11:52:29 +0300
User-agent: mu4e 1.0; emacs 25.1.1

Hi,

Kooda found a scheduler related segfault. There was an unimported symbol
in the scheduler.

This didn't cause any warnings as scheduler is not in a module.

I tested for additional missing symbols by wrapping it in a module, and
there shouldn't be any.

>From 80a167ab490e582f4aaf80aa7c74ff1c576cbb5d Mon Sep 17 00:00:00 2001
From: megane <address@hidden>
Date: Sun, 21 Oct 2018 11:45:49 +0300
Subject: [PATCH] * scheduler.scm: import chicken.condition for 'signal' used
 in ##sys#default-exception-handler

Kooda found this on IRC:

;; Segfaults when run with 'csi -:x test.scm'
(import srfi-18)
(define (proc) (error "coucou"))
(define th (thread-start! proc))
---
 rules.make    | 3 ++-
 scheduler.scm | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/rules.make b/rules.make
index 3624a7b..ef3df8b 100644
--- a/rules.make
+++ b/rules.make
@@ -571,7 +571,8 @@ optimizer.c: optimizer.scm mini-srfi-1.scm \
                chicken.sort.import.scm \
                chicken.string.import.scm
 scheduler.c: scheduler.scm \
-               chicken.format.import.scm
+               chicken.format.import.scm \
+               chicken.condition.import.scm
 scrutinizer.c: scrutinizer.scm mini-srfi-1.scm \
                chicken.compiler.support.import.scm \
                chicken.format.import.scm \
diff --git a/scheduler.scm b/scheduler.scm
index b971048..238c348 100644
--- a/scheduler.scm
+++ b/scheduler.scm
@@ -133,7 +133,7 @@ inline static void C_fdset_add(int fd, int input, int 
output) {
 EOF
 ) )
 
-(import scheme chicken.base chicken.fixnum chicken.format)
+(import scheme chicken.base chicken.fixnum chicken.format chicken.condition)
 
 (include "common-declarations.scm")
 
-- 
2.7.4


reply via email to

[Prev in Thread] Current Thread [Next in Thread]