Using the latest VM candidate (201912311458) on Windows, I sometimes find the output console having opened itself without showing any meaningful error:
The output is:
SetDIBitsToDevice failed (0) -- Progress completed successfully (i translated the description from German)
I cannot tell exactly what's the cause, but it might be related to situations where the VM hangs a while during Windows is busy to scale all my many open windows. Or maybe, when the VM was busy to save my image (which, despite
SSD, may take ten seconds from time to time). But I don't think any of these points should be a reason display "error no error".
Best,
Christoph
Carpe Squeak!
|
I have those occasionally in the UUID plugin. A reboot helps. :-D Seems to be related to some resource management issue between plugin and operating system. Never had this "width=..." though ... Best, Marcel
|
Reboot of the VM, you mean? Never heard of this plugin, is it preinstalled?
Best, Christoph Von: Squeak-dev <[hidden email]> im Auftrag von Taeumel, Marcel
Gesendet: Dienstag, 18. Februar 2020 09:15:04 An: John Pfersich via Squeak-dev Betreff: Re: [squeak-dev] VM Console opening without errors
I have those occasionally in the UUID plugin. A reboot helps. :-D Seems to be related to some resource management issue between plugin and operating system. Never had this "width=..." though ...
Best,
Marcel
Carpe Squeak!
|
I wouldn't call it "reboot" if I would just restart the VM. I mean the host operating system.
|
In reply to this post by Christoph Thiede
Not obvious, but worth knowing:
"Smalltalk listBuiltinModules" gives a list of all internal plugins. These are the plugins that are compiled into the main VM executable. "Smalltalk listLoadedModules" give a list of all external plugins that have so far been loaded. It is not necessarily a list of all of the external plugins, rather it is the external plugins that have been referenced by the image. The external plugins are loaded on demand, and once loaded, are available for fast access to the primitives that they provide. If a plugin is compiled as a built-in module, and if it also is compiled as a separate external plugin (Windows dll or Unix shared library), then the external plugin overrides the primitive implemented in the built-in module. UUIDPlugin is usually provided as an external plugin, in part because the UUID runtime libraries have been problematic in the past, see for example http://bugs.squeak.org/view.php?id=7358. If a plugin like this is causing problems, or if you suspect that it is causing problems, then you can get rid of in on your computer by simply deleting the dll. Dave On Tue, Feb 18, 2020 at 08:16:49AM +0000, Thiede, Christoph wrote: > Reboot of the VM, you mean? Never heard of this plugin, is it preinstalled? > > > Best, > > Christoph > > ________________________________ > Von: Squeak-dev <[hidden email]> im Auftrag von Taeumel, Marcel > Gesendet: Dienstag, 18. Februar 2020 09:15:04 > An: John Pfersich via Squeak-dev > Betreff: Re: [squeak-dev] VM Console opening without errors > > I have those occasionally in the UUID plugin. A reboot helps. :-D Seems to be related to some resource management issue between plugin and operating system. Never had this "width=..." though ... > > Best, > Marcel > > Am 18.02.2020 09:08:59 schrieb Thiede, Christoph <[hidden email]>: > > Using the latest VM candidate (201912311458) on Windows, I sometimes find the output console having opened itself without showing any meaningful error: > > > [cid:e8e58ce6-8be8-493d-8d3a-0449e4fac434] > > > The output is: > > SetDIBitsToDevice failed (0) -- Progress completed successfully (i translated the description from German) > > I cannot tell exactly what's the cause, but it might be related to situations where the VM hangs a while during Windows is busy to scale all my many open windows. Or maybe, when the VM was busy to save my image (which, despite SSD, may take ten seconds from time to time). But I don't think any of these points should be a reason display "error no error". > > Best, > Christoph > |
In reply to this post by Christoph Thiede
Hi Christoph, On Tue, Feb 18, 2020 at 12:08 AM Thiede, Christoph <[hidden email]> wrote:
$ find platforms/ -type f -exec grep -H "width=.*height=.*bits=.*dc=" {} \; platforms//win32/plugins/HostWindowPlugin/sqWin32HostWindowPlugin.c: warnPrintf(TEXT("width=%" PRIdSQINT ",height=%" PRIdSQINT ",bits=%" PRIXSQPTR ",dc=%" PRIXSQPTR "\n"), platforms//win32/vm/sqWin32Window.c: warnPrintf("width=%" PRIdSQINT ",height=%" PRIdSQINT ",bits=%" PRIXSQINT ",dc=%" PRIXSQPTR "\n", So this could be happening in a couple of places. It does look to be trying to report an error: platforms/win32/plugins/HostWindowPlugin/sqWin32HostWindowPlugin.c: sqInt ioShowDisplayOnWindow(unsigned char* dispBits, sqInt width, sqInt height, sqInt depth, sqInt affectedL, sqInt affectedR, sqInt affectedT, sqInt affectedB, sqInt windowIndex) { ... if (lines == 0) { printLastError(TEXT("SetDIBitsToDevice failed")); warnPrintf(TEXT("width=%" PRIdSQINT ",height=%" PRIdSQINT ",bits=%" PRIXSQPTR ",dc=%" PRIXSQPTR "\n"), width, height, (usqIntptr_t)dispBits, (usqIntptr_t)dc); } platforms/win32/vm/sqWin32Window.c: sqInt ioShowDisplay(sqInt dispBits, sqInt width, sqInt height, sqInt depth, sqInt affectedL, sqInt affectedR, sqInt affectedT, sqInt affectedB) ... if(lines == 0) { printLastError(TEXT("SetDIBitsToDevice failed")); warnPrintf("width=%" PRIdSQINT ",height=%" PRIdSQINT ",bits=%" PRIXSQINT ",dc=%" PRIXSQPTR "\n", width, height, dispBits,(usqIntptr_t)dc); } I'm not a Windows aficionado^H^H^H^H^H^H^H^H^H^Hexpert so I'm not about to try and debug this ;-)
_,,,^..^,,,_ best, Eliot |
In reply to this post by David T. Lewis
> On 2020-02-18, at 6:08 PM, David T. Lewis <[hidden email]> wrote: > > Not obvious, but worth knowing: > > "Smalltalk listBuiltinModules" gives a list of all internal plugins. > These are the plugins that are compiled into the main VM executable. > > "Smalltalk listLoadedModules" give a list of all external plugins that > have so far been loaded. It is not necessarily a list of all of the > external plugins, rather it is the external plugins that have been > referenced by the image. The external plugins are loaded on demand, > and once loaded, are available for fast access to the primitives that > they provide. Also note that you can unload a plugin; this is primarily a benefit when you are developing a plugin since you can build it, compile it, try it, decide something needs more work, unload it, re build it, recompile it, try it again and so on. Much faster than building it internal every time and rebuilding the vm etc. > > If a plugin is compiled as a built-in module, and if it also is > compiled as a separate external plugin (Windows dll or Unix shared > library), then the external plugin overrides the primitive implemented > in the built-in module. The key point about the external over-riding internal is to support bug fixing without replacing the entire vm. It does of course also almost completely obviate the value of the SecurityPlugin. tim -- tim Rowledge; [hidden email]; http://www.rowledge.org/tim A hacker does for love what others would not do for money. |
On Wed, Feb 19, 2020 at 10:45 AM tim Rowledge <[hidden email]> wrote:
The SecurityPlugin could be extended to allow/disallow plugin un/re/loading and could refuse to allow itself to be unloaded. P.S. I'm getting a bit frustrated that VM discussions are being held on the general purpose list and not on vm-dev. Not because I don't want Vm discussions here, but that vm-dev is a place of record. Please try and cc vm-dev when a discussion strays that way. tim _,,,^..^,,,_ best, Eliot |
On Wed, Feb 19, 2020 at 11:56:29AM -0800, Eliot Miranda wrote:
> > P.S. I'm getting a bit frustrated that VM discussions are being held on the > general purpose list and not on vm-dev. Not because I don't want Vm > discussions here, but that vm-dev is a place of record. Please try and cc > vm-dev when a discussion strays that way. > Yes indeed, although your humble vm-dev list moderator would be profoundly grateful if all involved if we could somehow refrain from accidentally copying megabyte graphical attachments to every single reply to every single email that gets CC'ed to the vm-dev list. Thank you. Dave |
Free forum by Nabble | Edit this page |