orthecreedence / cl-async

Asynchronous IO library for Common Lisp.
MIT License
272 stars 40 forks source link

cl-async-ssl fails to load twice #161

Open zmyrgel opened 5 years ago

zmyrgel commented 5 years ago

Loading the cl-async-ssl works after merging the my pull request but I noticed it causes following memory fault when I try to load the cl-async-ssl again in same image.

(ql:quickload 'cl-async-ssl)
(ql:quickload 'cl-async-ssl)

Unhandled memory fault at #x28E6359A0.
   [Condition of type SB-SYS:MEMORY-FAULT-ERROR]

Restarts:
 0: [TRY-RECOMPILING] Recompile src/ssl/tcp and try loading it again
 1: [RETRY] Retry loading FASL for #<CL-SOURCE-FILE "cl-async-ssl" "src/ssl/tcp">.
 2: [ACCEPT] Continue, treating loading FASL for #<CL-SOURCE-FILE "cl-async-ssl" "src/ssl/tcp"> as having been successful.
 3: [RETRY] Retry ASDF operation.
 4: [CLEAR-CONFIGURATION-AND-RETRY] Retry ASDF operation after resetting the configuration.
 5: [RETRY] Retry ASDF operation.
 --more--

Backtrace:
 0: ("bogus stack frame")
 1: ("foreign function: lh_retrieve")
 2: ("foreign function: ERR_pop_to_mark")
 3: ("foreign function: ERR_func_error_string")
 4: ("foreign function: SSL_load_error_strings")
 5: (ENSURE-INIT :FROM-LOAD T)
 6: (SB-FASL::LOAD-FASL-GROUP #S(SB-FASL::FASL-INPUT :STREAM #<SB-SYS:FD-STREAM for "file /home/tmy/.cache/common-lisp/sbcl-1.4.14.openbsd-bsd-x64/home/tmy/quicklisp/local-projects/cl-async/src/ssl/tcp.fa..
 7: (SB-FASL::LOAD-AS-FASL #<SB-SYS:FD-STREAM for "file /home/tmy/.cache/common-lisp/sbcl-1.4.14.openbsd-bsd-x64/home/tmy/quicklisp/local-projects/cl-async/src/ssl/tcp.fasl" {1004089AE3}> NIL NIL)
 8: ((FLET SB-FASL::THUNK :IN LOAD))
 9: (SB-FASL::CALL-WITH-LOAD-BINDINGS #<CLOSURE (FLET SB-FASL::THUNK :IN LOAD) {24C0BD75B}> #<SB-SYS:FD-STREAM for "file /home/tmy/.cache/common-lisp/sbcl-1.4.14.openbsd-bsd-x64/home/tmy/quicklisp/local-p..
10: ((FLET SB-FASL::LOAD-STREAM :IN LOAD) #<SB-SYS:FD-STREAM for "file /home/tmy/.cache/common-lisp/sbcl-1.4.14.openbsd-bsd-x64/home/tmy/quicklisp/local-projects/cl-async/src/ssl/tcp.fasl" {1004089AE3}> T..
11: (LOAD #P"/home/tmy/.cache/common-lisp/sbcl-1.4.14.openbsd-bsd-x64/home/tmy/quicklisp/local-projects/cl-async/src/ssl/tcp.fasl" :VERBOSE NIL :PRINT NIL :IF-DOES-NOT-EXIST T :EXTERNAL-FORMAT :DEFAULT)
12: (UIOP/UTILITY:CALL-WITH-MUFFLED-CONDITIONS #<CLOSURE (LAMBDA NIL :IN UIOP/LISP-BUILD:LOAD*) {10040884FB}> ("Overwriting already existing readtable ~S." #(#:FINALIZERS-OFF-WARNING :ASDF-FINALIZERS)))
13: ((SB-PCL::EMF ASDF/ACTION:PERFORM) #<unused argument> #<unused argument> #<ASDF/LISP-ACTION:LOAD-OP > #<ASDF/LISP-ACTION:CL-SOURCE-FILE "cl-async-ssl" "src/ssl/tcp">)
14: ((LAMBDA NIL :IN ASDF/ACTION:CALL-WHILE-VISITING-ACTION))
15: ((:METHOD ASDF/ACTION:PERFORM :AROUND (ASDF/LISP-ACTION:LOAD-OP ASDF/LISP-ACTION:CL-SOURCE-FILE)) #<ASDF/LISP-ACTION:LOAD-OP > #<ASDF/LISP-ACTION:CL-SOURCE-FILE "cl-async-ssl" "src/ssl/tcp">) [fast-me..
16: ((:METHOD ASDF/ACTION:PERFORM-WITH-RESTARTS (ASDF/LISP-ACTION:LOAD-OP ASDF/LISP-ACTION:CL-SOURCE-FILE)) #<ASDF/LISP-ACTION:LOAD-OP > #<ASDF/LISP-ACTION:CL-SOURCE-FILE "cl-async-ssl" "src/ssl/tcp">) [f..
17: ((:METHOD ASDF/ACTION:PERFORM-WITH-RESTARTS :AROUND (T T)) #<ASDF/LISP-ACTION:LOAD-OP > #<ASDF/LISP-ACTION:CL-SOURCE-FILE "cl-async-ssl" "src/ssl/tcp">) [fast-method]
18: ((:METHOD ASDF/PLAN:PERFORM-PLAN (T)) #<ASDF/PLAN:SEQUENTIAL-PLAN {100337C233}>) [fast-method]
19: ((FLET SB-C::WITH-IT :IN SB-C::%WITH-COMPILATION-UNIT))
 --more--