[Gd-chatter] r11045 - trunk/libraries/gui-sniffer
hannes at gwydiondylan.org
hannes at gwydiondylan.org
Sat Dec 9 17:22:39 CET 2006
Author: hannes
Date: Sat Dec 9 17:22:37 2006
New Revision: 11045
Modified:
trunk/libraries/gui-sniffer/gui-sniffer.dylan
Log:
Bug: 7299
*improve performance by copying the sequence instead of adding each item seperately
Modified: trunk/libraries/gui-sniffer/gui-sniffer.dylan
==============================================================================
--- trunk/libraries/gui-sniffer/gui-sniffer.dylan (original)
+++ trunk/libraries/gui-sniffer/gui-sniffer.dylan Sat Dec 9 17:22:37 2006
@@ -248,13 +248,10 @@
map(real-frame, frame.network-frames),
frame.network-frames)
else
- frame.network-frames
+ copy-sequence(frame.network-frames)
end;
unless (shown-packets = gadget-items(frame.packet-table))
- gadget-items(frame.packet-table) := #();
- do(method(x)
- add-item(frame.packet-table, make-item(frame.packet-table, x))
- end, shown-packets);
+ gadget-items(frame.packet-table) := shown-packets;
show-packet(frame);
end;
end;
@@ -846,8 +843,10 @@
define method reinit-gui (frame :: <gui-sniffer-frame>)
frame.first-packet-arrived := #f;
*count* := 0;
- frame.network-frames := make(<stretchy-vector>);
- gadget-items(frame.packet-table) := #();
+ with-lock ($packet-list-lock)
+ frame.network-frames := make(<stretchy-vector>);
+ gadget-items(frame.packet-table) := #();
+ end;
show-packet(frame);
end;
More information about the chatter
mailing list