----boundary-LibPST-iamunique-546081811_-_-
Content-type: text/plain
Hello, Marc!
>> I've been trying to track down a recently discovered bug in
>> one of my Blackbox programs. So far, it appears to be a bug
>> introduced into the Blackbox framework at v1.5. When I
>> minimize ne of my windows in a particular application, I get
>> a trap.
MM> Following up on my previous message about a possible bug introduced
MM> in Blackbox 1.5, I see that I only enounter this problem if I create
MM> a new view with a ResizePref of horFitToWin=TRUE / verFitToWin=TRUE.
..
MM> In Blackbox 1.5, the following appears in the log:
MM> r = 6130925, b = 3863975
MM> r = 6130925, b = 3863975
MM> r = 2147347123, b = 2147347123
MM> Those huge values in the Blackbox 1.5 log are what's causing
MM> my programs to crash when the window is minimized.
MM> I'd say that this is a bug in Blackbox 1.5...
This is an interesting feature. I looked into it. It turned out that
when a window is minimized its method SetSize is called like this
in HostWindows module:
PROCEDURE (w: Window) SetSize* (width, height: INTEGER);
.......
IF (width = 0) & (height = 0) THEN w.SetSize^(minimized, minimized)
ELSE
w.SetSize^(width, height);
The constant HostWindows.minimized = MAX(INTEGER). That's the source
of problems. Later on, the procedure Views.ValidateRoot tries to
repaint a region with coordinates (0, 0, 2147474123, 2147474123).
I don't know why did they choose to mark minimized window client
area size with biggest available width and height (instead of 0 or
-1).
The solutions is quite simple:
- set constant HostWindow.minimized = 0;
- compile HostWindows;
- restart BlackBox.
Thank you for the bug!
---=====---
Alexander
--- BlackBox
--- send subject HELP or UNSUBSCRIBE to blackbox{([at]})nowhere.xy
--- BlackBox
--- send subject HELP or UNSUBSCRIBE to blackbox{([at]})nowhere.xy
----boundary-LibPST-iamunique-546081811_-_-
Content-type: application/rtf
Content-transfer-encoding: base64
Content-Disposition: attachment; filename="rtf-body.rtf"
e1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcZnJvbXRleHQgXGRlZmYwe1xmb250dGJsDQp7XGYwXGZz
d2lzcyBBcmlhbDt9DQp7XGYxXGZtb2Rlcm4gQ291cmllciBOZXc7fQ0Ke1xmMlxmbmlsXGZjaGFy
c2V0MiBTeW1ib2w7fQ0Ke1xmM1xmbW9kZXJuXGZjaGFyc2V0MCBDb3VyaWVyIE5ldzt9fQ0Ke1xj
b2xvcnRibFxyZWQwXGdyZWVuMFxibHVlMDtccmVkMFxncmVlbjBcYmx1ZTI1NTt9DQpcdWMxXHBh
cmRccGxhaW5cZGVmdGFiMzYwIFxmMFxmczIwIEhlbGxvLCBNYXJjIVxwYXINClxwYXINCj4+IEkn
dmUgYmVlbiB0cnlpbmcgdG8gdHJhY2sgZG93biBhIHJlY2VudGx5IGRpc2NvdmVyZWQgYnVnIGlu
XHBhcg0KPj4gb25lIG9mIG15IEJsYWNrYm94IHByb2dyYW1zLiAgU28gZmFyLCBpdCBhcHBlYXJz
IHRvIGJlIGEgYnVnXHBhcg0KPj4gaW50cm9kdWNlZCBpbnRvIHRoZSBCbGFja2JveCBmcmFtZXdv
cmsgYXQgdjEuNS4gIFdoZW4gSSBccGFyDQo+PiBtaW5pbWl6ZSBuZSBvZiBteSB3aW5kb3dzIGlu
IGEgcGFydGljdWxhciBhcHBsaWNhdGlvbiwgSSBnZXQgXHBhcg0KPj4gYSB0cmFwLlxwYXINClxw
YXINCk1NPiBGb2xsb3dpbmcgdXAgb24gbXkgcHJldmlvdXMgbWVzc2FnZSBhYm91dCBhIHBvc3Np
YmxlIGJ1ZyBpbnRyb2R1Y2VkXHBhcg0KTU0+IGluIEJsYWNrYm94IDEuNSwgSSBzZWUgdGhhdCBJ
IG9ubHkgZW5vdW50ZXIgdGhpcyBwcm9ibGVtIGlmIEkgY3JlYXRlXHBhcg0KTU0+IGEgbmV3IHZp
ZXcgd2l0aCBhIFJlc2l6ZVByZWYgb2YgaG9yRml0VG9XaW49VFJVRSAvIHZlckZpdFRvV2luPVRS
VUUuXHBhcg0KXHBhcg0KLi5ccGFyDQpccGFyDQpNTT4gSW4gQmxhY2tib3ggMS41LCB0aGUgZm9s
bG93aW5nIGFwcGVhcnMgaW4gdGhlIGxvZzpccGFyDQpccGFyDQpNTT4gICByID0gIDYxMzA5MjUs
IGIgPSAgMzg2Mzk3NVxwYXINCk1NPiAgIHIgPSAgNjEzMDkyNSwgYiA9ICAzODYzOTc1XHBhcg0K
TU0+ICAgciA9ICAyMTQ3MzQ3MTIzLCBiID0gIDIxNDczNDcxMjNccGFyDQpccGFyDQpNTT4gVGhv
c2UgaHVnZSB2YWx1ZXMgaW4gdGhlIEJsYWNrYm94IDEuNSBsb2cgYXJlIHdoYXQncyBjYXVzaW5n
XHBhcg0KTU0+IG15IHByb2dyYW1zIHRvIGNyYXNoIHdoZW4gdGhlIHdpbmRvdyBpcyBtaW5pbWl6
ZWQuXHBhcg0KXHBhcg0KTU0+IEknZCBzYXkgdGhhdCB0aGlzIGlzIGEgYnVnIGluIEJsYWNrYm94
IDEuNS4uLlxwYXINClxwYXINCiAgVGhpcyBpcyBhbiBpbnRlcmVzdGluZyBmZWF0dXJlLiBJIGxv
b2tlZCBpbnRvIGl0LiBJdCB0dXJuZWQgb3V0IHRoYXRccGFyDQogIHdoZW4gYSB3aW5kb3cgaXMg
bWluaW1pemVkIGl0cyBtZXRob2QgU2V0U2l6ZSBpcyBjYWxsZWQgbGlrZSB0aGlzXHBhcg0KICBp
biBIb3N0V2luZG93cyBtb2R1bGU6XHBhcg0KXHBhcg0KICBQUk9DRURVUkUgKHc6IFdpbmRvdykg
U2V0U2l6ZSogKHdpZHRoLCBoZWlnaHQ6IElOVEVHRVIpO1xwYXINCiAgLi4uLi4uLlxwYXINCiAg
ICBJRiAod2lkdGggPSAwKSAmIChoZWlnaHQgPSAwKSBUSEVOIHcuU2V0U2l6ZV4obWluaW1pemVk
LCBtaW5pbWl6ZWQpXHBhcg0KICAgIEVMU0VccGFyDQogICAgICB3LlNldFNpemVeKHdpZHRoLCBo
ZWlnaHQpO1xwYXINClxwYXINCiAgVGhlIGNvbnN0YW50IEhvc3RXaW5kb3dzLm1pbmltaXplZCA9
IE1BWChJTlRFR0VSKS4gVGhhdCdzIHRoZSBzb3VyY2VccGFyDQogIG9mIHByb2JsZW1zLiBMYXRl
ciBvbiwgdGhlIHByb2NlZHVyZSBWaWV3cy5WYWxpZGF0ZVJvb3QgdHJpZXMgdG9ccGFyDQogIHJl
cGFpbnQgYSByZWdpb24gd2l0aCBjb29yZGluYXRlcyAoMCwgMCwgMjE0NzQ3NDEyMywgMjE0NzQ3
NDEyMykuXHBhcg0KXHBhcg0KICBJIGRvbid0IGtub3cgd2h5IGRpZCB0aGV5IGNob29zZSB0byBt
YXJrIG1pbmltaXplZCB3aW5kb3cgY2xpZW50XHBhcg0KICBhcmVhIHNpemUgd2l0aCBiaWdnZXN0
IGF2YWlsYWJsZSB3aWR0aCBhbmQgaGVpZ2h0IChpbnN0ZWFkIG9mIDAgb3JccGFyDQogIC0xKS5c
cGFyDQogIFxwYXINCiAgVGhlIHNvbHV0aW9ucyBpcyBxdWl0ZSBzaW1wbGU6XHBhcg0KICAtIHNl
dCBjb25zdGFudCBIb3N0V2luZG93Lm1pbmltaXplZCA9IDA7XHBhcg0KICAtIGNvbXBpbGUgSG9z
dFdpbmRvd3M7XHBhcg0KICAtIHJlc3RhcnQgQmxhY2tCb3guXHBhcg0KXHBhcg0KICBUaGFuayB5
b3UgZm9yIHRoZSBidWchXHBhcg0KICBccGFyDQotLS09PT09PS0tLVxwYXINCiBBbGV4YW5kZXJc
cGFyDQpccGFyDQotLS0gQmxhY2tCb3hccGFyDQotLS0gc2VuZCBzdWJqZWN0IEhFTFAgb3IgVU5T
VUJTQ1JJQkUgdG8gYmxhY2tib3hAb2Jlcm9uLmNoXHBhcg0KXHBhcg0KLS0tIEJsYWNrQm94XHBh
cg0KLS0tIHNlbmQgc3ViamVjdCBIRUxQIG9yIFVOU1VCU0NSSUJFIHRvIGJsYWNrYm94QG9iZXJv
bi5jaFxwYXINClxwYXINCn0=
----boundary-LibPST-iamunique-546081811_-_---
Received on Mon Jan 15 2007 - 23:36:29 UTC