Faculty of Information Technology
Software Engineering Group

Opened 19 months ago

Last modified 18 months ago

#218 new defect

Smalltalk/X does not start from saved image

Reported by: Patrik Svestka Owned by:
Priority: major Milestone:
Component: default Keywords:
Cc: Also affects CVS HEAD (eXept version): no

Description

After lengthy session I've stored my work at image but when I tried to start from it I got to minidebugger with all windows blank.

The short message:

WinWorkstation [info]: CreateWindow S failed: 1406 (0x57e) [4770]

WinWorkstation [error]: CreateWindow failed: 1406 (0x57e) [9022]

NoHandlerError: primitive failed: a WinWorkstation(WinSta0)>>setEventMask:in:

When started with --abortOnSIGSEGV option got this Error stack:

WinWorkstation [info]: CreateWindow S failed: 1406 (0x57e) [4770]
WinWorkstation [error]: CreateWindow failed: 1406 (0x57e) [9022]
NoHandlerError: primitive failed: a WinWorkstation(WinSta0)>>setEventMask:in:
process: id=1 name=scheduler
context: WinWorkstation >> setEventMask:in: [24]
 ......: ScrollBar(SimpleView) >> recreate [26]
 ......: ScrollBar(SimpleView) >> reinitialize [25]
 ......: ScrollBar >> reinitialize [2]
 ......:  [** intermediate recursive contexts skipped **]
 ......: ScrollBar >> reinitialize [2]
 ......: ArrowButton(SimpleView) >> reinitialize [16]
 ......:  [** intermediate recursive contexts skipped **]
 ......: ArrowButton(SimpleView) >> reinitialize [16]
 ......: ArrowButton(Button) >> reinitialize [2]
 ......:  [** intermediate recursive contexts skipped **]
 ......: ArrowButton(Button) >> reinitialize [2]
 ......: [] in DeviceWorkstation>>reinitializeFor: >> value [67]
 ......: Signal >> handle:do: [14]
 ......: [] in DeviceWorkstation>>reinitializeFor: >> value [63]
 ......: SignalSet >> handle:do: [14]
 ......: SignalSet >> catch: [11]
 ......: [] in DeviceWorkstation>>reinitializeFor: >> value: [62]
 ......: [] in WeakValueDictionary>>do: >> value: [5]
 ......:  [** intermediate recursive contexts skipped **]
 ......: [] in WeakValueDictionary>>do: >> value: [5]
 ......: WeakValueDictionary(Dictionary) >> do: [21]
 ......: WeakValueDictionary >> do: [2]
 ......:  [** intermediate recursive contexts skipped **]
 ......: WeakValueDictionary >> do: [2]
 ......: WinWorkstation(DeviceWorkstation) >> reinitializeFor: [58]
 ......: WinWorkstation(Object) >> perform:with: [31]
 ......: MessageNode >> evaluateIn:forCascade: [32]
 ......: MessageNode >> evaluateIn: [2]
 ......: StatementNode >> evaluateExpressionIn: [2]
 ......: StatementNode >> evaluateAllIn: [7]
 ......: StatementNode >> evaluateIn: [2]
 ......: StatementNode(ParseNode) >> evaluate [2]
 ......: BlockNode >> value [7]
 ......: [] in BlockNode>>doesNotUnderstand: >> value [10]
 ......:  [** intermediate recursive contexts skipped **]
 ......: [] in BlockNode>>doesNotUnderstand: >> value [10]
 ......: Block >> on:do: [11]
 ......: Block(Object) >> perform:withArguments: [135]
 ......: Message >> sendTo: [4]
 ......: BlockNode >> doesNotUnderstand: [30]
 ......: BlockNode(**NONE**) >> on:do: [31]
 ......: BlockNode(Object) >> perform:with:with: [31]
 ......: MessageNode >> evaluateIn:forCascade: [36]
 ......: MessageNode >> evaluateIn: [2]
 ......: StatementNode >> evaluateExpressionIn: [2]
 ......: StatementNode >> evaluateAllIn: [7]
 ......: StatementNode >> evaluateIn: [2]
 ......: StatementNode(ParseNode) >> evaluate [2]
 ......: BlockNode >> value [7]
 ......: True >> ifTrue: [8]
 ......: True(Object) >> perform:with: [31]
 ......: MessageNode >> evaluateIn:forCascade: [32]
 ......: MessageNode >> evaluateIn: [2]
 ......: StatementNode >> evaluateExpressionIn: [2]
 ......: StatementNode >> evaluateAllIn: [7]
 ......: StatementNode >> evaluateIn: [2]
 ......: StatementNode(ParseNode) >> evaluate [2]
 ......: [] in Parser>>evaluate:in:receiver:notifying:logged:ifFail:compile:checkForEndOfInput: >> value [138]
 ......: QuerySignal >> answer:do: [10]
 ......: [] in Parser>>evaluate:in:receiver:notifying:logged:ifFail:compile:checkForEndOfInput: >> value [120]
 ......: UndefinedVariableError class(GenericException class) >> handle:do: [14]
 ......: ByteCodeCompiler(Parser) >> evaluate:in:receiver:notifying:logged:ifFail:compile:checkForEndOfInput: [113]
 ......: ByteCodeCompiler(Parser) >> evaluate:receiver:notifying:compile: [3]
 ......: EncodedStream(PeekableStream) >> fileInNextChunkNotifying:passChunk:silent: [37]
 ......: EncodedStream(PeekableStream) >> fileInNextChunkNotifying:passChunk: [14]
 ......: [] in EncodedStream>>basicFileInNotifying:passChunk: >> value [146]
 ......: SignalSet >> handle:do: [14]
 ......: EncodedStream >> basicFileInNotifying:passChunk: [100]
 ......: EncodedStream(PeekableStream) >> fileInNotifying:passChunk: [6]
 ......: [] in PeekableStream>>fileIn >> value [14]
 ......: QuerySignal(Signal) >> handle:do: [14]
 ......: EncodedStream(PeekableStream) >> fileIn [11]
 ......: SmalltalkChunkFileSourceReader >> fileInStream: [2]
 ......: SmalltalkChunkFileSourceReader class(AbstractSourceFileReader class) >> fileInStream: [3]
 ......:  [** intermediate recursive contexts skipped **]
 ......: SmalltalkChunkFileSourceReader class(AbstractSourceFileReader class) >> fileInStream: [3]
 ......: SmalltalkLanguage(ProgrammingLanguage) >> fileInStream: [3]
 ......:  [** intermediate recursive contexts skipped **]
 ......: SmalltalkLanguage(ProgrammingLanguage) >> fileInStream: [3]
 ......: [] in Smalltalk class>>fileInStream:lazy:silent:logged:addPath: >> value [42]
 ......: SignalSet >> answer:do: [10]
 ......: [] in Smalltalk class>>fileInStream:lazy:silent:logged:addPath: >> value [39]
 ......: Block >> ensure: [12]
 ......: Smalltalk class >> fileInStream:lazy:silent:logged:addPath: [44]
 ......: Smalltalk class >> fileIn:lazy:silent:logged: [60]
 ......: Smalltalk class >> fileIn: [10]
 ......: [] in Smalltalk class>>restart >> value [129]
 ......: [] in ClassDescription>>withoutUpdatingChangesDo: >> value [9]
 ......:  [** intermediate recursive contexts skipped **]
 ......: [] in ClassDescription>>withoutUpdatingChangesDo: >> value [9]
 ......: SignalSet >> answer:do: [10]
 ......: Class class(ClassDescription) >> withoutUpdatingChangesDo: [7]
 ......: [] in Smalltalk class>>restart >> value [126]
 ......: Block >> on:do: [11]
 ......: Smalltalk class >> restart [132]
 ......: UndefinedObject >> nil [0]
 ......: nil
Type "c" to proceed, "?" for help

I'm attaching also the log file.

Attachments (1)

smalltalk_2018-05-11_utf8.log (35.8 KB) - added by Patrik Svestka 19 months ago.
session log file - multiple sessions

Download all attachments as: .zip

Change History (2)

Changed 19 months ago by Patrik Svestka

session log file - multiple sessions

comment:1 Changed 18 months ago by Patrik Svestka

Just to add additional information. The Smalltalk/X does not start from image when started for second time after "long" usage.

Workflow (happened to me now for the third time in a row):

1. *hack* *hack* (for hours)
2. save to image
3. load from image
4. *hack* *hack* (for hours)
5. save to image
6. trying to load from image - but only blank windows are loaded -> bug
Note: See TracTickets for help on using tickets.