Error when receiving a message on Linux
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Coccinella |
Invalid
|
Medium
|
buzzdee |
Bug Description
An error appears when receiving a message on Linux:
Coccinella 0.96.8 under Linux CentOS 4.6, tk 8.4.7
Server: Openfire
Reporter: http://
can't read "chatstate(wpane)": no such element in array
can't read "chatstate(wpane)": no such element in array
while executing
"::UI::SaveSashPos $wDlgs(jchat) $chatstate(wpane)"
(procedure "Close" line 21)
invoked from within
"Close $dlgtoken"
(procedure "::Chat::CloseCmd" line 5)
invoked from within
"::Chat::CloseCmd .jchat1"
("uplevel" body line 1)
invoked from within
"uplevel #0 $topcache(
(procedure "::UI::
invoked from within
"::UI::
(command for "WM_DELETE_WINDOW" window manager protocol)
Also get;
preshook ::namespace inscope ::Roster PresenceEvent failed: 1
bad modifier "265": must be above, ancestors, below, bottom, child, children, descendants, first
child, lastchild, left, leftmost, next, nextsibling, parent, prev, prevsibling, right, rightmost
, sibling, or top
while executing
"$T item element configure $item cTree $elem -image $image"
(procedure "SetAltImage" line 29)
invoked from within
"SetAltImage $jid $key $value"
(procedure "::RosterPlain:
invoked from within
"$plugin(
(procedure "StyleConfigure
invoked from within
"StyleConfigure
(procedure "::RosterTree:
invoked from within
"::RosterTree:
and - Support}} -subscription both -resource Coccinella..."
("eval" body line 1)
invoked from within
"eval {
::RosterTree:
} $itemAttr [array get presA]"
("highest-prio" arm line 15)
invoked from within
"switch -- $config(
"highest-prio" {
# Add only the one with highest priority.
set jid2 [jlib::barejid $jid]
..."
(procedure "NewAvailableItem" line 10)
invoked from within
"NewAvailableItem $rjid"
(procedure "Presence" line 71)
invoked from within
"Presence $jid3 $type -from sreilly@
nella@sreilly-l -xmldata {presence {from sreilly@edchom..."
("eval" body line 1)
invoked from within
"eval {Presence $jid3 $type} $opts"
(procedure "PresenceEvent" line 64)
invoked from within
"PresenceEvent ::jlib::jlib1 {presence {from sreilly@
home} 0 {} {{x {ver 0.96.8 xmlns http://
(in namespace inscope "::Roster" script line 1)
invoked from within
"::namespace inscope ::Roster PresenceEvent ::jlib::jlib1 {presence {from sreilly@
ella@sreilly-l to walcorn@edchome} 0 {} {{x {ver 0.96.8..."
("uplevel" body line 1)
invoked from within
"uplevel #0 $func [list $jlibname $xmldata]"
bad modifier "265": must be above, ancestors, below, bottom, child, children, descendants, first
child, lastchild, left, leftmost, next, nextsibling, parent, prev, prevsibling, right, rightmost
, sibling, or top
while executing
"$T item element configure $item cTree $elem -image $image"
(procedure "SetAltImage" line 29)
invoked from within
"SetAltImage $jid $key $value"
(procedure "::RosterPlain:
invoked from within
"$plugin(
(procedure "StyleConfigure
invoked from within
"StyleConfigure
(procedure "::RosterTree:
invoked from within
"::RosterTree:
and - Support}} -subscription both -resource Coccinella..."
("eval" body line 1)
invoked from within
"eval {
::RosterTree:
} $itemAttr [array get presA]"
("highest-prio" arm line 15)
invoked from within
"switch -- $config(
"highest-prio" {
# Add only the one with highest priority.
set jid2 [jlib::barejid $jid]
..."
(procedure "NewAvailableItem" line 10)
invoked from within
"NewAvailableItem $rjid"
(procedure "Presence" line 71)
invoked from within
"Presence $jid3 $type -from sreilly@
("eval" body line 1)
invoked from within
"eval {Presence $jid3 $type} $opts"
(procedure "PresenceEvent" line 64)
invoked from within
"PresenceEvent ::jlib::jlib1 {presence {from sreilly@
(in namespace inscope "::Roster" script line 1)
invoked from within
"::namespace inscope ::Roster PresenceEvent ::jlib::jlib1 {presence {from sreilly@
("uplevel" body line 1)
invoked from within
"uplevel #0 $func [list $jlibname $xmldata]"
Changed in coccinella: | |
assignee: | nobody → matsben |
importance: | Undecided → Medium |
These are actually two separate bugs. First first: www.tcl. tk/man/ tcl8.5/ TkCmd/wm. htm#M44 The only logical explanation for this is if the window manager somehow destroys the window before sending the WM_DELETE_WINDOW event. Perhaps it would be worthwhile to test current cvs with a Tcl/Tk 8.5 instead.
I can't reproduce it and I can't see how it can happen.
I register with the window manager to receive an event *before* the window is actually destroyed as:
wm protocol $w WM_DELETE_WINDOW [list ::UI::DoCloseWindow $w "wm"]
and the chatstate array is only cleaned up when the window is actually destroyed. So the wpane member should be there during the WM_DELETE_WINDOW event.See: http://