[Starkit] Re: FW: Starkit corrupted if mounted 2 times...?
Eckhard Lehmann
ecky-l at web.de
Sat Mar 25 16:17:49 CET 2006
Hi Jean Claude,
I didn't know about the mailing list, sorry... Of course it is okay that
you forwarded the mail there.
>> The file structure is not the same anymore, at least one directory
>> beneath the toplevel directory has vanished and the files/
>> directories from there went to the toplevel directory. The starkit
>> is also not executable anymore. This was on windows XP, vfs 1.3 and
>> vfs::mk4 1.9/1.10, Tcl8.4.12 and Tcl8.4.9.
>> I assume this is a bug, not a feature ;-)? It is very bad, if you
>> mount/unmount starkits several times and consider them as being
>> editable and runnable... Is there a way to find out if the kit is
>> mounted already - resp. is it possible to extend the starkit
>> mechanism so that it generates an error if the kit is mounted
>> already? That would be great...
>>
>
> Simple answer: add "-readonly" to the mount command. There is a
> recent change which makes it possible to mount even r/w more than
> once as long as no change whatsoever is made to the starkit, but this
> isn't in the tclkit 8.4.12 build.
>
Hmm, I think I should explain more clearly what I am trying to do:
I have written an editor in Tcl, with which it should be possible to
edit the Tcl files inside a starkit, without extracting them. For that I
mount the starkit without special options:
% set fsh [vfs::mk4::Mount file.kit file.kit]
and when I am done with the kit and want to close it, I unmount it -
again without special options:
% vfs::mk4::Unmount $fsh file.kit
When it is mounted, I can access the files in the kit from Tcl just like
normal files, open/save/close them as I would do it with files in the
file system. From what I understood, this is the purpose and idea of a
virtual filesystem.
Now - since it is a starkit - I'd like to see the effect of the changes
I made to the Tcl files inside. So I run the kit outside my Editor:
$ tclkit file.kit
And that is, when the problems arise - but *only* on windows (I test it
frequently on Linux and Windows XP). On Linux everything is fine, I can
run the kit while it is mounted in the editor and can even edit files
inside, while it is running. But on windows, as soon as I close the kit,
the file corruption happens. I can get around this problem on windows by
closing (unmounting) it before I run it outside - but if I forget this...
Could it be that the starkits are, maybe by accident, not mounted
readonly from Tclkit on windows? On both platforms I have self-built,
threads enabled Tclkits... but I don't think the threads are a problem -
or are they? The applications themselves make no use of threads.
Well - what I do is somewhat brave anyway... ;-)
Eckhard
More information about the Starkit
mailing list