[BUG] ArchiveViewer chokes on ReadOnly ZIPs

Helge Horch Helge.Horch at munich.netsurf.de
Tue Dec 18 18:04:23 UTC 2001


Folks,

I can't view ZIPs that are marked ReadOnly in the host's file system; I get 
a walkback instead.  I had a FileList on a win32 machine, selected a R/O 
zip and chose the beloved "open archive viewer" from the pop-up.

(StandardFileStream requests writing permission by default, and thus 
answers nil, which in turn doesn't understand #binary.  I'm too busy to fix 
this right now, and on writable media I can easily work around it.)

18 December 2001 11:05:06 am

VM: Win32 - Squeak3.1alpha of 28 February 2001 [latest update: #4044]
Image: Squeak3.2alpha [latest update: #4599]

UndefinedObject(Object)>>doesNotUnderstand:
	Receiver: nil
	Arguments and temporary variables:
		aMessage: 	a Message with selector: #binary and arguments: #()
	Receiver's instance variables:
nil

ZipArchive>>readFrom:
	Receiver: a ZipArchive
	Arguments and temporary variables:
		aStreamOrFileName: 	'C:\Squeak\3.2\SqueakExe-3.1a6.zip'
		stream: 	nil
		name: 	'C:\Squeak\3.2\SqueakExe-3.1a6.zip'
		eocdPosition: 	nil
	Receiver's instance variables:
		members: 	an OrderedCollection()
		centralDirectorySize: 	nil
		centralDirectoryOffsetWRTStartingDiskNumber: 	nil
		zipFileComment: 	''
		writeCentralDirectoryOffset: 	0
		writeEOCDOffset: 	0

ArchiveViewer>>fileName:
	Receiver: an ArchiveViewer(1614)
	Arguments and temporary variables:
		aString: 	'C:\Squeak\3.2\SqueakExe-3.1a6.zip'
	Receiver's instance variables:
		bounds: 	0 at 0 corner: 550 at 230
		owner: 	nil
		submorphs: 	#(a PluggableTextMorph(2302) a PluggableListMorph(446) an 
AlignmentM...etc...
		fullBounds: 	nil
		color: 	Color white
		extension: 	a MorphExtension (10) [eventHandler = an EventHandler; 
mouseEnterSel...etc...
		borderWidth: 	2
		borderColor: 	#raised
		model: 	nil
		slotName: 	nil
		open: 	false
		labelString: 	'Ned''s Zip Viewer'
		stripes: 	#(a RectangleMorph(2387) a RectangleMorph(2272))
		label: 	a StringMorph(98)'Ned''s Zip Viewer'
		closeBox: 	a SimpleButtonMorph(1414)
		collapseBox: 	a SimpleButtonMorph(3735)
		activeOnlyOnTop: 	true
		paneMorphs: 	#(a PluggableTextMorph(2302) a PluggableListMorph(446) an 
Alignment...etc...
		paneRects: 	nil
		collapsedFrame: 	nil
		fullFrame: 	0 at 0 corner: 550 at 230
		isCollapsed: 	false
		menuBox: 	an IconicButton(2735)
		mustNotClose: 	false
		labelWidgetAllowance: 	75
		updatablePanes: 	#()
		allowReframeHandles: 	true
		labelArea: 	an AlignmentMorph(676)
		expandBox: 	an IconicButton(4044)
		archive: 	nil
		fileName: 	nil
		memberIndex: 	0
		viewAllContents: 	false

ArchiveViewer class>>openOn:
	Receiver: ArchiveViewer
	Arguments and temporary variables:
		aFileName: 	'C:\Squeak\3.2\SqueakExe-3.1a6.zip'
	Receiver's instance variables:
		superclass: 	SystemWindow
		methodDict: 	a MethodDictionary(#addDirectory->a CompiledMethod (1398) 
#addMembe...etc...
		format: 	196
		instanceVariables: 	#('archive' 'fileName' 'memberIndex' 'viewAllContents')
		organization: 	('member operations' addDirectory addMember 
addMemberFromClipboar...etc...
		subclasses: 	nil
		name: 	#ArchiveViewer
		classPool: 	nil
		sharedPools: 	nil
		environment: 	a SystemDictionary(lots of globals)
		category: 	nil
		prototype: 	nil

--- The rest of the stack ---
FileList>>openArchiveViewer
FileList(StringHolder)>>perform:orSendTo:
FileList>>perform:orSendTo:
[] in MenuItemMorph>>invokeWithEvent:
BlockContext>>ensure:
CursorWithMask(Cursor)>>showWhile:
MenuItemMorph>>invokeWithEvent:
MenuItemMorph>>mouseUp:
MenuItemMorph>>handleMouseUp:
--8<-- snipped --8<--




More information about the Squeak-dev mailing list