Bwidget Source Code
View Ticket
Not logged in
Ticket UUID: 52273c0a4e6287bc076bb57349283ee51a6b736d
Title: MainFrame configure crash when Widget::theme is 1
Type: Bug Version: fossil
Submitter: anonymous Created on: 2016-03-15 07:51:05
Subsystem: bwidget Assigned To: nobody
Priority: 5 Medium Severity: Important
Status: Closed Last Modified: 2016-03-15 08:59:54
Resolution: Fixed Closed By: oehhar
    Closed on: 2016-03-15 08:59:54
Description:
Hi!

Appears that the BWidget MainFrame emits an error when its configure command is called and Widget::theme is set to 1. The following script illustrates the bug:

----------------------------------------------------------
package require BWidget

Widget::theme 1

pack [MainFrame .mf] -expand yes -fill both
pack [text .mf.f] -expand yes -fill both
.mf.f insert 0.0 [.mf configure]
----------------------------------------------------------

It fails with the following error message:
---------------------------
Error in startup script
---------------------------
unknown option "-background"
    while executing
"$path cget $realopt"
    (procedure "cget" line 21)
    invoked from within
"cget $path $option"
    (procedure "_get_configure" line 31)
    invoked from within
"_get_configure $path $options"
    (procedure "Widget::configure" line 4)
    invoked from within
"Widget::configure $path $args"
    (procedure "MainFrame::configure" line 4)
    invoked from within
"MainFrame::configure .mf"
    ("eval" body line 1)
    invoked from within
"eval [linsert $args 0 MainFrame::$cmd .mf]"
    (procedure ".mf" line 1)
    invoked from within
".mf configure"
    invoked from within
".mf.f insert 0.0 [.mf configure]"
    (file "C:\Temp\mftest.tcl" line 9)
---------------------------

I've seen this bug in BWidget 0.9.8, but given that MainFrame.tcl hasn't been changes since that I believe that the bug is present in the trunk as well.
User Comments: oehhar added on 2016-03-15 08:59:54: (text/x-fossil-wiki)
Thank you, good catch!
"-background" was not removed everywere which hit us in the back.

Minimum script:
<verbatim>
package require BWidget
Widget::theme 1
MainFrame .mf
.mf configure
</verbatim>

Fix in commit [f83cfb9f5f].

I would be glad for a short verification if this fixes the issue.

Thank you,
Harald