You can subscribe to this list here.
2005 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(191) |
Jul
(1) |
Aug
(2) |
Sep
|
Oct
|
Nov
(238) |
Dec
(68) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2006 |
Jan
(104) |
Feb
(518) |
Mar
(302) |
Apr
(211) |
May
(311) |
Jun
(55) |
Jul
(6) |
Aug
(35) |
Sep
(76) |
Oct
(50) |
Nov
(37) |
Dec
(340) |
2007 |
Jan
(23) |
Feb
(107) |
Mar
(98) |
Apr
(60) |
May
(136) |
Jun
(371) |
Jul
(175) |
Aug
(74) |
Sep
(3) |
Oct
(2) |
Nov
(53) |
Dec
(129) |
2008 |
Jan
(337) |
Feb
(23) |
Mar
(18) |
Apr
(4) |
May
(3) |
Jun
|
Jul
|
Aug
(4) |
Sep
|
Oct
(33) |
Nov
|
Dec
(26) |
2009 |
Jan
(4) |
Feb
(1) |
Mar
(15) |
Apr
|
May
(35) |
Jun
(11) |
Jul
|
Aug
|
Sep
(19) |
Oct
(26) |
Nov
(11) |
Dec
(11) |
2010 |
Jan
(4) |
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
(8) |
Sep
|
Oct
|
Nov
(8) |
Dec
(7) |
2011 |
Jan
|
Feb
|
Mar
(4) |
Apr
(8) |
May
(5) |
Jun
(8) |
Jul
(1) |
Aug
|
Sep
|
Oct
(5) |
Nov
(13) |
Dec
|
From: John L. <jr...@us...> - 2006-10-05 05:10:50
|
Update of /cvsroot/wxlua/wxLua/apps/wxlua/src In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv28254/wxLua/apps/wxlua/src Modified Files: editor.h Log Message: change wxLuaDebugeeEvent wxEVT_WXLUA_DEBUGGER_CLIENT_CONNECTED to wxEVT_WXLUA_DEBUGGER_DEBUGGEE_CONNECTED add wxEVT_WXLUA_DEBUGGER_DEBUGGEE_DISCONNECTED and send it when a read/write fails make wxEvtHandler::Connect check for numbers only, NOT nil or bool enhance the wxLuaSocketException replace more nil bool values with true/false in editor.wx.lua Index: editor.h =================================================================== RCS file: /cvsroot/wxlua/wxLua/apps/wxlua/src/editor.h,v retrieving revision 1.25 retrieving revision 1.26 diff -C2 -d -r1.25 -r1.26 *** editor.h 4 Oct 2006 22:07:19 -0000 1.25 --- editor.h 5 Oct 2006 05:10:44 -0000 1.26 *************** *** 9,14 **** extern const unsigned char wxLuaEditor[]; ! const size_t wxLuaEditor_len = 73621; ! const unsigned char wxLuaEditor[73622] = { 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 61, 45, 45, 45, 10, 45, 45, 32, 78, 97,109,101, 58, 32, 32, 32, 32, 32, 32, 32, 32, 69,100,105,116,111,114, 46,119,120, 46,108,117, 97, 10, --- 9,14 ---- extern const unsigned char wxLuaEditor[]; ! const size_t wxLuaEditor_len = 73920; ! const unsigned char wxLuaEditor[73921] = { 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 61, 45, 45, 45, 10, 45, 45, 32, 78, 97,109,101, 58, 32, 32, 32, 32, 32, 32, 32, 32, 69,100,105,116,111,114, 46,119,120, 46,108,117, 97, 10, *************** *** 340,344 **** 32, 32, 32, 32,101,108,115,101, 10, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,102,105,108,101, 80, 97,116,104, 32, 61, 32,111,112,101,110, 68,111, 99,117,109,101,110,116,115, 91,105,100, 93, 46,102,105,108,101, 80, 97,116,104, 10, ! 32, 32, 32, 32, 32, 32, 32, 32,111,112,101,110, 68,111, 99,117,109,101,110,116,115, 91,105,100, 93, 46,105,115, 77,111,100,105,102,105,101,100, 32, 61, 32,110,105,108, 10, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,114,101,115,101,116, 77,111,100, 84,105,109,101, 32, 97,110,100, 32,102,105,108,101, 80, 97,116,104, 32, 97,110,100, 32,115,116,114,105,110,103, 46,108,101,110, 40,102,105,108,101, 80, 97,116,104, 41, 32, 62, 32, 48, 32,116,104,101,110, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,111,112,101,110, 68,111, 99,117,109,101,110,116,115, 91,105,100, 93, 46,109,111,100, 84,105,109,101, 32, 61, 32, 71,101,116, 70,105,108,101, 77,111,100, 84,105,109,101, 40,102,105,108,101, 80, 97,116,104, 41, 10, --- 340,344 ---- 32, 32, 32, 32,101,108,115,101, 10, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,102,105,108,101, 80, 97,116,104, 32, 61, 32,111,112,101,110, 68,111, 99,117,109,101,110,116,115, 91,105,100, 93, 46,102,105,108,101, 80, 97,116,104, 10, ! 32, 32, 32, 32, 32, 32, 32, 32,111,112,101,110, 68,111, 99,117,109,101,110,116,115, 91,105,100, 93, 46,105,115, 77,111,100,105,102,105,101,100, 32, 61, 32,102, 97,108,115,101, 10, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,114,101,115,101,116, 77,111,100, 84,105,109,101, 32, 97,110,100, 32,102,105,108,101, 80, 97,116,104, 32, 97,110,100, 32,115,116,114,105,110,103, 46,108,101,110, 40,102,105,108,101, 80, 97,116,104, 41, 32, 62, 32, 48, 32,116,104,101,110, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,111,112,101,110, 68,111, 99,117,109,101,110,116,115, 91,105,100, 93, 46,109,111,100, 84,105,109,101, 32, 61, 32, 71,101,116, 70,105,108,101, 77,111,100, 84,105,109,101, 40,102,105,108,101, 80, 97,116,104, 41, 10, *************** *** 503,507 **** 32, 32, 32, 32, 32, 32, 32, 32,100,111, 99,117,109,101,110,116, 46,102,105,108,101, 80, 97,116,104, 32, 32, 32, 61, 32,110,105,108, 10, 32, 32, 32, 32, 32, 32, 32, 32,100,111, 99,117,109,101,110,116, 46,109,111,100, 84,105,109,101, 32, 32, 32, 32, 61, 32,110,105,108, 10, ! 32, 32, 32, 32, 32, 32, 32, 32,100,111, 99,117,109,101,110,116, 46,105,115, 77,111,100,105,102,105,101,100, 32, 61, 32,110,105,108, 10, 32, 32, 32, 32, 32, 32, 32, 32,111,112,101,110, 68,111, 99,117,109,101,110,116,115, 91,105,100, 93, 32, 32, 32, 61, 32,100,111, 99,117,109,101,110,116, 10, 32, 32, 32, 32,101,110,100, 10, --- 503,507 ---- 32, 32, 32, 32, 32, 32, 32, 32,100,111, 99,117,109,101,110,116, 46,102,105,108,101, 80, 97,116,104, 32, 32, 32, 61, 32,110,105,108, 10, 32, 32, 32, 32, 32, 32, 32, 32,100,111, 99,117,109,101,110,116, 46,109,111,100, 84,105,109,101, 32, 32, 32, 32, 61, 32,110,105,108, 10, ! 32, 32, 32, 32, 32, 32, 32, 32,100,111, 99,117,109,101,110,116, 46,105,115, 77,111,100,105,102,105,101,100, 32, 61, 32,102, 97,108,115,101, 10, 32, 32, 32, 32, 32, 32, 32, 32,111,112,101,110, 68,111, 99,117,109,101,110,116,115, 91,105,100, 93, 32, 32, 32, 61, 32,100,111, 99,117,109,101,110,116, 10, 32, 32, 32, 32,101,110,100, 10, *************** *** 843,847 **** 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,105,100, 32, 61, 32,101,100,105,116,111,114, 58, 71,101,116, 73,100, 40, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,111,112,101,110, 68,111, 99,117,109,101,110,116,115, 91,105,100, 93, 32,116,104,101,110, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,118,101,110,116, 58, 69,110, 97, 98,108,101, 40,111,112,101,110, 68,111, 99,117,109,101,110,116,115, 91,105,100, 93, 46,105,115, 77,111,100,105,102,105,101,100, 32,126, 61, 32,110,105,108, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, --- 843,847 ---- 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,105,100, 32, 61, 32,101,100,105,116,111,114, 58, 71,101,116, 73,100, 40, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,111,112,101,110, 68,111, 99,117,109,101,110,116,115, 91,105,100, 93, 32,116,104,101,110, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,118,101,110,116, 58, 69,110, 97, 98,108,101, 40,111,112,101,110, 68,111, 99,117,109,101,110,116,115, 91,105,100, 93, 46,105,115, 77,111,100,105,102,105,101,100, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, *************** *** 850,854 **** 102,117,110, 99,116,105,111,110, 32, 83, 97,118,101, 70,105,108,101, 65,115, 40,101,100,105,116,111,114, 41, 10, 32, 32, 32, 32,108,111, 99, 97,108, 32,105,100, 32, 32, 32, 32, 32, 32, 32, 61, 32,101,100,105,116,111,114, 58, 71,101,116, 73,100, 40, 41, 10, ! 32, 32, 32, 32,108,111, 99, 97,108, 32,115, 97,118,101,100, 32, 32, 32, 32, 61, 32,110,105,108, 10, 32, 32, 32, 32,108,111, 99, 97,108, 32,102,110, 32, 32, 32, 32, 32, 32, 32, 61, 32,119,120, 46,119,120, 70,105,108,101, 78, 97,109,101, 40,111,112,101,110, 68,111, 99,117,109,101,110,116,115, 91,105,100, 93, 46,102,105,108,101, 80, 97,116,104, 41, 10, 32, 32, 32, 32,102,110, 58, 78,111,114,109, 97,108,105,122,101, 40, 41, 32, 45, 45, 32,119, 97,110,116, 32, 97, 98,115,111,108,117,116,101, 32,112, 97,116,104, 32,102,111,114, 32,100,105, 97,108,111,103, 10, --- 850,854 ---- 102,117,110, 99,116,105,111,110, 32, 83, 97,118,101, 70,105,108,101, 65,115, 40,101,100,105,116,111,114, 41, 10, 32, 32, 32, 32,108,111, 99, 97,108, 32,105,100, 32, 32, 32, 32, 32, 32, 32, 61, 32,101,100,105,116,111,114, 58, 71,101,116, 73,100, 40, 41, 10, ! 32, 32, 32, 32,108,111, 99, 97,108, 32,115, 97,118,101,100, 32, 32, 32, 32, 61, 32,102, 97,108,115,101, 10, 32, 32, 32, 32,108,111, 99, 97,108, 32,102,110, 32, 32, 32, 32, 32, 32, 32, 61, 32,119,120, 46,119,120, 70,105,108,101, 78, 97,109,101, 40,111,112,101,110, 68,111, 99,117,109,101,110,116,115, 91,105,100, 93, 46,102,105,108,101, 80, 97,116,104, 41, 10, 32, 32, 32, 32,102,110, 58, 78,111,114,109, 97,108,105,122,101, 40, 41, 32, 45, 45, 32,119, 97,110,116, 32, 97, 98,115,111,108,117,116,101, 32,112, 97,116,104, 32,102,111,114, 32,100,105, 97,108,111,103, 10, *************** *** 1018,1022 **** 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, ! 32, 32, 32, 32, 32, 32, 32, 32,100,111, 99,117,109,101,110,116, 46,105,115, 77,111,100,105,102,105,101,100, 32, 61, 32,110,105,108, 10, 32, 32, 32, 32,101,110,100, 10, 101,110,100, 10, --- 1018,1022 ---- 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, ! 32, 32, 32, 32, 32, 32, 32, 32,100,111, 99,117,109,101,110,116, 46,105,115, 77,111,100,105,102,105,101,100, 32, 61, 32,102, 97,108,115,101, 10, 32, 32, 32, 32,101,110,100, 10, 101,110,100, 10, *************** *** 1520,1523 **** --- 1520,1524 ---- 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,111,112,101,110, 68,111, 99,117,109,101,110,116,115, 91,105,100, 93, 46,105,115, 77,111,100,105,102,105,101,100, 32,116,104,101,110, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 83, 97,118,101, 70,105,108,101, 40,101,100,105,116,111,114, 44, 32,111,112,101,110, 68,111, 99,117,109,101,110,116,115, 91,105,100, 93, 46,102,105,108,101, 80, 97,116,104, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,111,112,101,110, 68,111, 99,117,109,101,110,116,115, 91,105,100, 93, 46,105,115, 77,111,100,105,102,105,101,100, 32, 61, 32,102, 97,108,115,101, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, 10, *************** *** 1554,1559 **** 10, 102,117,110, 99,116,105,111,110, 32, 67,114,101, 97,116,101, 68,101, 98,117,103, 83,101,114,118,101,114, 40, 41, 10, ! 32, 32, 32, 32,108,111, 99, 97,108, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32, 61, 32,119,120, 46,119,120, 76,117, 97, 68,101, 98,117,103,103,101,114, 83,101,114,118,101,114, 40,112,111,114,116, 78,117,109, 98,101,114, 41, 10, ! 32, 32, 32, 32,105,102, 32,110,111,116, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32,116,104,101,110, 32,114,101,116,117,114,110, 32,110,105,108, 32,101,110,100, 10, 10, 32, 32, 32, 32,108,111, 99, 97,108, 32,111,107, 32, 61, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 83,116, 97,114,116, 83,101,114,118,101,114, 40, 41, 10, --- 1555,1559 ---- 10, 102,117,110, 99,116,105,111,110, 32, 67,114,101, 97,116,101, 68,101, 98,117,103, 83,101,114,118,101,114, 40, 41, 10, ! 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32, 61, 32,119,120, 46,119,120, 76,117, 97, 68,101, 98,117,103,103,101,114, 83,101,114,118,101,114, 40,112,111,114,116, 78,117,109, 98,101,114, 41, 10, 10, 32, 32, 32, 32,108,111, 99, 97,108, 32,111,107, 32, 61, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 83,116, 97,114,116, 83,101,114,118,101,114, 40, 41, 10, *************** *** 1571,1575 **** 32, 32, 32, 32,101,110,100, 10, 10, ! 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 67,111,110,110,101, 99,116, 40,119,120, 46,119,120, 73, 68, 95, 65, 78, 89, 44, 32,119,120, 46,119,120, 69, 86, 84, 95, 87, 88, 76, 85, 65, 95, 68, 69, 66, 85, 71, 71, 69, 82, 95, 67, 76, 73, 69, 78, 84, 95, 67, 79, 78, 78, 69, 67, 84, 69, 68, 44, 10, 32, 32, 32, 32, 32, 32, 32, 32,102,117,110, 99,116,105,111,110, 32, 40,101,118,101,110,116, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,111,107, 32, 61, 32,102, 97,108,115,101, 10, --- 1571,1575 ---- 32, 32, 32, 32,101,110,100, 10, 10, ! 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 67,111,110,110,101, 99,116, 40,119,120, 46,119,120, 73, 68, 95, 65, 78, 89, 44, 32,119,120, 46,119,120, 69, 86, 84, 95, 87, 88, 76, 85, 65, 95, 68, 69, 66, 85, 71, 71, 69, 82, 95, 68, 69, 66, 85, 71, 71, 69, 69, 95, 67, 79, 78, 78, 69, 67, 84, 69, 68, 44, 10, 32, 32, 32, 32, 32, 32, 32, 32,102,117,110, 99,116,105,111,110, 32, 40,101,118,101,110,116, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,111,107, 32, 61, 32,102, 97,108,115,101, 10, *************** *** 1598,1606 **** 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 41, 10, 10, 32, 32, 32, 32,102,117,110, 99,116,105,111,110, 32, 68,101, 98,117,103,103,101,114, 73,103,110,111,114,101, 70,105,108,101, 40,102,105,108,101, 78, 97,109,101, 41, 10, ! 32, 32, 32, 32, 32, 32, 32, 32,105,103,110,111,114,101, 70,108, 97,103, 32, 61, 32,110,105,108, 10, 32, 32, 32, 32, 32, 32, 32, 32,102,111,114, 32,105,100,120, 44, 32,105,103,110,111,114,101, 70,105,108,101, 32,105,110, 32,112, 97,105,114,115, 40,105,103,110,111,114,101,100, 70,105,108,101,115, 76,105,115,116, 41, 32,100,111, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,115,116,114,105,110,103, 46,117,112,112,101,114, 40,105,103,110,111,114,101, 70,105,108,101, 41, 32, 61, 61, 32,115,116,114,105,110,103, 46,117,112,112,101,114, 40,102,105,108,101, 78, 97,109,101, 41, 32,116,104,101,110, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,103,110,111,114,101, 70,108, 97,103, 32, 61, 32, 49, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, --- 1598,1613 ---- 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 41, 10, 10, + 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 67,111,110,110,101, 99,116, 40,119,120, 46,119,120, 73, 68, 95, 65, 78, 89, 44, 32,119,120, 46,119,120, 69, 86, 84, 95, 87, 88, 76, 85, 65, 95, 68, 69, 66, 85, 71, 71, 69, 82, 95, 68, 69, 66, 85, 71, 71, 69, 69, 95, 68, 73, 83, 67, 79, 78, 78, 69, 67, 84, 69, 68, 44, 10, + 32, 32, 32, 32, 32, 32, 32, 32,102,117,110, 99,116,105,111,110, 32, 40,101,118,101,110,116, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 68,105,115,112,108, 97,121, 79,117,116,112,117,116, 40,101,118,101,110,116, 58, 71,101,116, 77,101,115,115, 97,103,101, 40, 41, 46, 46, 34, 92,110, 34, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 68,101,108,101,116,101, 40, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32, 61, 32,110,105,108, 10, + 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 41, 10, + 10, 32, 32, 32, 32,102,117,110, 99,116,105,111,110, 32, 68,101, 98,117,103,103,101,114, 73,103,110,111,114,101, 70,105,108,101, 40,102,105,108,101, 78, 97,109,101, 41, 10, ! 32, 32, 32, 32, 32, 32, 32, 32,105,103,110,111,114,101, 70,108, 97,103, 32, 61, 32,102, 97,108,115,101, 10, 32, 32, 32, 32, 32, 32, 32, 32,102,111,114, 32,105,100,120, 44, 32,105,103,110,111,114,101, 70,105,108,101, 32,105,110, 32,112, 97,105,114,115, 40,105,103,110,111,114,101,100, 70,105,108,101,115, 76,105,115,116, 41, 32,100,111, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,115,116,114,105,110,103, 46,117,112,112,101,114, 40,105,103,110,111,114,101, 70,105,108,101, 41, 32, 61, 61, 32,115,116,114,105,110,103, 46,117,112,112,101,114, 40,102,105,108,101, 78, 97,109,101, 41, 32,116,104,101,110, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,103,110,111,114,101, 70,108, 97,103, 32, 61, 32,116,114,117,101, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, *************** *** 1709,1718 **** 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 41, 10, 10, - 10, - 10, 32, 32, 32, 32,114,101,116,117,114,110, 32,100,101, 98,117,103, 83,101,114,118,101,114, 10, 101,110,100, 10, 10, - 10, 102,114, 97,109,101, 58, 67,111,110,110,101, 99,116, 40, 73, 68, 95, 83, 84, 65, 82, 84, 95, 68, 69, 66, 85, 71, 44, 32,119,120, 46,119,120, 69, 86, 84, 95, 67, 79, 77, 77, 65, 78, 68, 95, 77, 69, 78, 85, 95, 83, 69, 76, 69, 67, 84, 69, 68, 44, 10, 32, 32, 32, 32, 32, 32, 32, 32,102,117,110, 99,116,105,111,110, 32, 40,101,118,101,110,116, 41, 10, --- 1716,1722 ---- *************** *** 1746,1752 **** 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,102, 73,115, 67,111,110,110,101, 99,116,101,100, 32, 61, 32,102, 97,108,115,101, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32,116,104,101,110, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 82,101,115,101,116, 40, 41, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 68,101,108,101,116,101, 40, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32, 61, 32,110,105,108, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 83,101,116, 65,108,108, 69,100,105,116,111,114,115, 82,101, 97,100, 79,110,108,121, 40,102, 97,108,115,101, 41, 10, --- 1750,1758 ---- 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,102, 73,115, 67,111,110,110,101, 99,116,101,100, 32, 61, 32,102, 97,108,115,101, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32,116,104,101,110, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,100,115, 32, 61, 32,100,101, 98,117,103, 83,101,114,118,101,114, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32, 61, 32,110,105,108, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,115, 58, 82,101,115,101,116, 40, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,115, 58, 83,116,111,112, 83,101,114,118,101,114, 40, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,115, 58, 68,101,108,101,116,101, 40, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 83,101,116, 65,108,108, 69,100,105,116,111,114,115, 82,101, 97,100, 79,110,108,121, 40,102, 97,108,115,101, 41, 10, *************** *** 1906,1910 **** 10, 32, 32, 32, 32,108,111, 99, 97,108, 32,100,108,103, 32, 61, 32,119,120, 46,119,120, 68,105, 97,108,111,103, 40,102,114, 97,109,101, 44, 32,119,120, 46,119,120, 73, 68, 95, 65, 78, 89, 44, 32, 34, 65, 98,111,117,116, 32,119,120, 76,117, 97, 32, 73, 68, 69, 34, 41, 10, - 32, 32, 32, 32,108,111, 99, 97,108, 32,116,111,112,115,105,122,101,114, 32, 61, 32,119,120, 46,119,120, 66,111,120, 83,105,122,101,114, 40,119,120, 46,119,120, 86, 69, 82, 84, 73, 67, 65, 76, 41, 10, 10, 32, 32, 32, 32,108,111, 99, 97,108, 32,104,116,109,108, 32, 61, 32,119,120, 46,119,120, 76,117, 97, 72,116,109,108, 87,105,110,100,111,119, 40,100,108,103, 44, 32,119,120, 46,119,120, 73, 68, 95, 65, 78, 89, 44, 10, --- 1912,1915 ---- *************** *** 1921,1927 **** 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,104,116,109,108, 58, 71,101,116, 73,110,116,101,114,110, 97,108, 82,101,112,114,101,115,101,110,116, 97,116,105,111,110, 40, 41, 58, 71,101,116, 72,101,105,103,104,116, 40, 41, 41, 10, 10, 32, 32, 32, 32,116,111,112,115,105,122,101,114, 58, 65,100,100, 87,105,110,100,111,119, 40,104,116,109,108, 44, 32, 49, 44, 32,119,120, 46,119,120, 65, 76, 76, 44, 32, 49, 48, 41, 10, 32, 32, 32, 32,116,111,112,115,105,122,101,114, 58, 65,100,100, 87,105,110,100,111,119, 40,108,105,110,101, 44, 32, 48, 44, 32,119,120, 46,119,120, 69, 88, 80, 65, 78, 68, 32, 43, 32,119,120, 46,119,120, 76, 69, 70, 84, 32, 43, 32,119,120, 46,119,120, 82, 73, 71, 72, 84, 44, 32, 49, 48, 41, 10, - 10, 32, 32, 32, 32,116,111,112,115,105,122,101,114, 58, 65,100,100, 87,105,110,100,111,119, 40, 98,117,116,116,111,110, 44, 32, 48, 44, 32,119,120, 46,119,120, 65, 76, 76, 32, 43, 32,119,120, 46,119,120, 65, 76, 73, 71, 78, 95, 82, 73, 71, 72, 84, 44, 32, 49, 53, 41, 10, 10, --- 1926,1932 ---- 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,104,116,109,108, 58, 71,101,116, 73,110,116,101,114,110, 97,108, 82,101,112,114,101,115,101,110,116, 97,116,105,111,110, 40, 41, 58, 71,101,116, 72,101,105,103,104,116, 40, 41, 41, 10, 10, + 32, 32, 32, 32,108,111, 99, 97,108, 32,116,111,112,115,105,122,101,114, 32, 61, 32,119,120, 46,119,120, 66,111,120, 83,105,122,101,114, 40,119,120, 46,119,120, 86, 69, 82, 84, 73, 67, 65, 76, 41, 10, 32, 32, 32, 32,116,111,112,115,105,122,101,114, 58, 65,100,100, 87,105,110,100,111,119, 40,104,116,109,108, 44, 32, 49, 44, 32,119,120, 46,119,120, 65, 76, 76, 44, 32, 49, 48, 41, 10, 32, 32, 32, 32,116,111,112,115,105,122,101,114, 58, 65,100,100, 87,105,110,100,111,119, 40,108,105,110,101, 44, 32, 48, 44, 32,119,120, 46,119,120, 69, 88, 80, 65, 78, 68, 32, 43, 32,119,120, 46,119,120, 76, 69, 70, 84, 32, 43, 32,119,120, 46,119,120, 82, 73, 71, 72, 84, 44, 32, 49, 48, 41, 10, 32, 32, 32, 32,116,111,112,115,105,122,101,114, 58, 65,100,100, 87,105,110,100,111,119, 40, 98,117,116,116,111,110, 44, 32, 48, 44, 32,119,120, 46,119,120, 65, 76, 76, 32, 43, 32,119,120, 46,119,120, 65, 76, 73, 71, 78, 95, 82, 73, 71, 72, 84, 44, 32, 49, 53, 41, 10, 10, |
From: John L. <jr...@us...> - 2006-10-05 05:10:50
|
Update of /cvsroot/wxlua/wxLua/modules/wxluadebug/include In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv28254/wxLua/modules/wxluadebug/include Modified Files: wxldebug.h Log Message: change wxLuaDebugeeEvent wxEVT_WXLUA_DEBUGGER_CLIENT_CONNECTED to wxEVT_WXLUA_DEBUGGER_DEBUGGEE_CONNECTED add wxEVT_WXLUA_DEBUGGER_DEBUGGEE_DISCONNECTED and send it when a read/write fails make wxEvtHandler::Connect check for numbers only, NOT nil or bool enhance the wxLuaSocketException replace more nil bool values with true/false in editor.wx.lua Index: wxldebug.h =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxluadebug/include/wxldebug.h,v retrieving revision 1.28 retrieving revision 1.29 diff -C2 -d -r1.28 -r1.29 *** wxldebug.h 4 Oct 2006 22:07:23 -0000 1.28 --- wxldebug.h 5 Oct 2006 05:10:47 -0000 1.29 *************** *** 75,78 **** --- 75,80 ---- wxLuaDebugData(const wxLuaDebugData &debugData) { Ref(debugData); } + virtual ~wxLuaDebugData() {} // make gcc happy even though it's not used + // Get the data array, please use safe array access functions if possible wxLuaDebugDataItemArray* GetArray(); |
From: John L. <jr...@us...> - 2006-10-05 05:10:50
|
Update of /cvsroot/wxlua/wxLua/bindings/wxwidgets In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv28254/wxLua/bindings/wxwidgets Modified Files: override.hpp Log Message: change wxLuaDebugeeEvent wxEVT_WXLUA_DEBUGGER_CLIENT_CONNECTED to wxEVT_WXLUA_DEBUGGER_DEBUGGEE_CONNECTED add wxEVT_WXLUA_DEBUGGER_DEBUGGEE_DISCONNECTED and send it when a read/write fails make wxEvtHandler::Connect check for numbers only, NOT nil or bool enhance the wxLuaSocketException replace more nil bool values with true/false in editor.wx.lua Index: override.hpp =================================================================== RCS file: /cvsroot/wxlua/wxLua/bindings/wxwidgets/override.hpp,v retrieving revision 1.53 retrieving revision 1.54 diff -C2 -d -r1.53 -r1.54 *** override.hpp 28 Sep 2006 22:26:03 -0000 1.53 --- override.hpp 5 Oct 2006 05:10:47 -0000 1.54 *************** *** 1690,1694 **** evttype_idx = 4; ! if (wxlState.IsNumberType(3)) lastId = (int)lua_tonumber(L, 3); else --- 1690,1694 ---- evttype_idx = 4; ! if (wxlState.IsEnumerationType(3)) lastId = (int)lua_tonumber(L, 3); else *************** *** 1699,1703 **** } ! if (wxlState.IsNumberType(2)) winId = (int)lua_tonumber(L, 2); else --- 1699,1703 ---- } ! if (wxlState.IsEnumerationType(2)) winId = (int)lua_tonumber(L, 2); else *************** *** 1715,1719 **** evttype_idx = 3; ! if (wxlState.IsNumberType(2)) winId = (int)lua_tonumber(L, 2); else --- 1715,1719 ---- evttype_idx = 3; ! if (wxlState.IsEnumerationType(2)) winId = (int)lua_tonumber(L, 2); else *************** *** 1762,1770 **** } ! if (wxlState.IsNumberType(evttype_idx)) eventType = (int)lua_tonumber(L, evttype_idx); else { ! wxlState.terror(wxString::Format(wxT("wxLua: Connect: Invalid event type, expected a number for parameter %d, got '%s'."), evttype_idx - 1, wxlState.lua_TypeNameIndex(evttype_idx).c_str())); return 0; --- 1762,1770 ---- } ! if (wxlState.IsEnumerationType(evttype_idx)) eventType = (int)lua_tonumber(L, evttype_idx); else { ! wxlState.terror(wxString::Format(wxT("wxLua: Connect: Invalid wxEvent type, expected a number for parameter %d, got '%s'."), evttype_idx - 1, wxlState.lua_TypeNameIndex(evttype_idx).c_str())); return 0; *************** *** 1804,1808 **** evttype_idx = 4; ! if (wxlState.IsNumberType(3)) lastId = (int)lua_tonumber(L, 3); else --- 1804,1808 ---- evttype_idx = 4; ! if (wxlState.IsEnumerationType(3)) lastId = (int)lua_tonumber(L, 3); else *************** *** 1813,1817 **** } ! if (wxlState.IsNumberType(2)) winId = (int)lua_tonumber(L, 2); else --- 1813,1817 ---- } ! if (wxlState.IsEnumerationType(2)) winId = (int)lua_tonumber(L, 2); else *************** *** 1828,1832 **** evttype_idx = 3; ! if (wxlState.IsNumberType(2)) winId = (int)lua_tonumber(L, 2); else --- 1828,1832 ---- evttype_idx = 3; ! if (wxlState.IsEnumerationType(2)) winId = (int)lua_tonumber(L, 2); else *************** *** 1852,1856 **** } ! if (wxlState.IsNumberType(evttype_idx)) eventType = (int)lua_tonumber(L, evttype_idx); else --- 1852,1856 ---- } ! if (wxlState.IsEnumerationType(evttype_idx)) eventType = (int)lua_tonumber(L, evttype_idx); else |
From: John L. <jr...@us...> - 2006-10-04 22:07:33
|
Update of /cvsroot/wxlua/wxLua/modules/wxluasocket/src In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv29706/wxLua/modules/wxluasocket/src Modified Files: dservice.cpp wxldserv.cpp wxluasocket.cpp Log Message: check return values of debuger server to exit more gracefully on failure move port number into wxLuaDebuggerBase Index: wxldserv.cpp =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxluasocket/src/wxldserv.cpp,v retrieving revision 1.28 retrieving revision 1.29 diff -C2 -d -r1.28 -r1.29 *** wxldserv.cpp 4 Oct 2006 05:55:02 -0000 1.28 --- wxldserv.cpp 4 Oct 2006 22:07:23 -0000 1.29 *************** *** 155,160 **** END_EVENT_TABLE() ! wxLuaDebuggerBase::wxLuaDebuggerBase() ! :wxEvtHandler(), m_stackDialog(NULL), m_debuggeeProcess(NULL), m_debuggeeProcessID(-1) { --- 155,161 ---- END_EVENT_TABLE() ! wxLuaDebuggerBase::wxLuaDebuggerBase(int port_number) ! :wxEvtHandler(), m_port_number(port_number), ! m_stackDialog(NULL), m_debuggeeProcess(NULL), m_debuggeeProcessID(-1) { *************** *** 552,564 **** IMPLEMENT_ABSTRACT_CLASS(wxLuaDebuggerServer, wxLuaDebuggerBase) ! wxLuaDebuggerServer::wxLuaDebuggerServer(int portNumber) ! :wxLuaDebuggerBase(), ! m_serverSocket(NULL), ! m_acceptedSocket(NULL), ! m_portNumber(portNumber), m_pThread(NULL), m_fShutdown(false) { - StartServer(); } --- 553,562 ---- IMPLEMENT_ABSTRACT_CLASS(wxLuaDebuggerServer, wxLuaDebuggerBase) ! wxLuaDebuggerServer::wxLuaDebuggerServer(int port_number) ! :wxLuaDebuggerBase(port_number), ! m_serverSocket(NULL), m_acceptedSocket(NULL), m_pThread(NULL), m_fShutdown(false) { } *************** *** 582,586 **** { // listen on the specified port ! m_serverSocket->Listen(m_portNumber); } catch(wxLuaSocketException & e) --- 580,585 ---- { // listen on the specified port ! m_serverSocket->Listen(m_port_number); ! return StartServerThread(); } catch(wxLuaSocketException & e) *************** *** 590,603 **** AddPendingEvent(debugEvent); m_fShutdown = true; } } ! return (m_serverSocket != NULL); } bool wxLuaDebuggerServer::StartClient() { ! if ((m_debuggeeProcess == NULL) && StartServerThread()) { m_debuggeeProcess = new wxProcess(this, ID_WXLUASOCKET_DEBUGGEE_PROCESS); --- 589,604 ---- AddPendingEvent(debugEvent); + delete m_serverSocket; + m_serverSocket = NULL; m_fShutdown = true; } } ! return false; } bool wxLuaDebuggerServer::StartClient() { ! if ((m_debuggeeProcess == NULL) && m_serverSocket && !m_fShutdown && (m_pThread != NULL)) { m_debuggeeProcess = new wxProcess(this, ID_WXLUASOCKET_DEBUGGEE_PROCESS); *************** *** 605,609 **** GetProgramName().c_str(), GetNetworkName().c_str(), ! m_portNumber); m_debuggeeProcessID = wxExecute(command, wxEXEC_ASYNC, m_debuggeeProcess); --- 606,610 ---- GetProgramName().c_str(), GetNetworkName().c_str(), ! m_port_number); m_debuggeeProcessID = wxExecute(command, wxEXEC_ASYNC, m_debuggeeProcess); *************** *** 615,619 **** bool wxLuaDebuggerServer::StartServerThread() { ! if (!m_fShutdown && (m_pThread == NULL)) { m_pThread = new wxLuaDebuggerServer::LuaThread(this); --- 616,620 ---- bool wxLuaDebuggerServer::StartServerThread() { ! if (m_serverSocket && !m_fShutdown && (m_pThread == NULL)) { m_pThread = new wxLuaDebuggerServer::LuaThread(this); *************** *** 664,668 **** wxLuaSocket closeSocket; closeSocket.m_name = wxString::Format(wxT("wxLuaDebuggerServer closeSocket (%ld)"), (long)wxGetProcessId()); ! closeSocket.Connect(GetNetworkName(), m_portNumber); closeSocket.Shutdown(SD_BOTH); --- 665,669 ---- wxLuaSocket closeSocket; closeSocket.m_name = wxString::Format(wxT("wxLuaDebuggerServer closeSocket (%ld)"), (long)wxGetProcessId()); ! closeSocket.Connect(GetNetworkName(), m_port_number); closeSocket.Shutdown(SD_BOTH); *************** *** 690,693 **** --- 691,696 ---- void wxLuaDebuggerServer::ThreadFunction() { + wxCHECK_RET(m_serverSocket, wxT("Invalid server socket")); + try { *************** *** 713,717 **** // Enter the debug loop ! while (!m_fShutdown) { unsigned char debugEvent = 0; // wxLuaSocketDebuggeeEvents_Type --- 716,720 ---- // Enter the debug loop ! while (!m_fShutdown && m_acceptedSocket) { unsigned char debugEvent = 0; // wxLuaSocketDebuggeeEvents_Type *************** *** 758,765 **** ! wxLuaDebuggerwxSocketServer::wxLuaDebuggerwxSocketServer(int portNumber) ! : m_serverSocket(NULL), m_acceptedSocket(NULL), m_portNumber(portNumber) { - StartServer(); } --- 761,768 ---- ! wxLuaDebuggerwxSocketServer::wxLuaDebuggerwxSocketServer(int port_number) ! :wxLuaDebuggerBase(port_number), ! m_serverSocket(NULL), m_acceptedSocket(NULL) { } *************** *** 776,780 **** // Create the address - defaults to localhost:0 initially wxIPV4address addr; ! addr.Service(m_portNumber); // Create the server socket --- 779,783 ---- // Create the address - defaults to localhost:0 initially wxIPV4address addr; ! addr.Service(m_port_number); // Create the server socket *************** *** 816,820 **** GetProgramName().c_str(), GetNetworkName().c_str(), ! m_portNumber); m_debuggeeProcessID = wxExecute(command, wxEXEC_ASYNC, m_debuggeeProcess); --- 819,823 ---- GetProgramName().c_str(), GetNetworkName().c_str(), ! m_port_number); m_debuggeeProcessID = wxExecute(command, wxEXEC_ASYNC, m_debuggeeProcess); Index: dservice.cpp =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxluasocket/src/dservice.cpp,v retrieving revision 1.26 retrieving revision 1.27 diff -C2 -d -r1.26 -r1.27 *** dservice.cpp 4 Oct 2006 05:55:02 -0000 1.26 --- dservice.cpp 4 Oct 2006 22:07:23 -0000 1.27 *************** *** 723,727 **** END_EVENT_TABLE() ! wxLuaDebugger::wxLuaDebugger() { m_debuggerSocket = new wxLuaDebugSocket(); --- 723,727 ---- END_EVENT_TABLE() ! wxLuaDebugger::wxLuaDebugger(int port_number) : wxLuaDebuggerBase(port_number) { m_debuggerSocket = new wxLuaDebugSocket(); Index: wxluasocket.cpp =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxluasocket/src/wxluasocket.cpp,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** wxluasocket.cpp 28 Sep 2006 22:26:06 -0000 1.6 --- wxluasocket.cpp 4 Oct 2006 22:07:23 -0000 1.7 *************** *** 44,49 **** } ! // bool StartClient() ! static int LUACALL wxLua_wxLuaDebuggerServer_StartClient(lua_State *L) { wxLuaState wxlState(L); --- 44,49 ---- } ! // bool StartServer() ! static int LUACALL wxLua_wxLuaDebuggerServer_StartServer(lua_State *L) { wxLuaState wxlState(L); *************** *** 51,56 **** // get this wxLuaDebuggerServer * self = (wxLuaDebuggerServer *)wxlState.GetUserDataType(1, s_wxluatag_wxLuaDebuggerServer); ! // call StartClient ! returns = self->StartClient(); // push the result flag lua_pushboolean(L, returns); --- 51,56 ---- // get this wxLuaDebuggerServer * self = (wxLuaDebuggerServer *)wxlState.GetUserDataType(1, s_wxluatag_wxLuaDebuggerServer); ! // call StartServer ! returns = self->StartServer(); // push the result flag lua_pushboolean(L, returns); *************** *** 59,64 **** } ! // bool StartServerThread() ! static int LUACALL wxLua_wxLuaDebuggerServer_StartServerThread(lua_State *L) { wxLuaState wxlState(L); --- 59,64 ---- } ! // bool StopServer() ! static int LUACALL wxLua_wxLuaDebuggerServer_StopServer(lua_State *L) { wxLuaState wxlState(L); *************** *** 66,71 **** // get this wxLuaDebuggerServer * self = (wxLuaDebuggerServer *)wxlState.GetUserDataType(1, s_wxluatag_wxLuaDebuggerServer); ! // call StartServerThread ! returns = self->StartServerThread(); // push the result flag lua_pushboolean(L, returns); --- 66,86 ---- // get this wxLuaDebuggerServer * self = (wxLuaDebuggerServer *)wxlState.GetUserDataType(1, s_wxluatag_wxLuaDebuggerServer); ! // call StopServer ! returns = self->StopServer(); ! // push the result flag ! lua_pushboolean(L, returns); ! ! return 1; ! } ! ! // bool StartClient() ! static int LUACALL wxLua_wxLuaDebuggerServer_StartClient(lua_State *L) ! { ! wxLuaState wxlState(L); ! bool returns; ! // get this ! wxLuaDebuggerServer * self = (wxLuaDebuggerServer *)wxlState.GetUserDataType(1, s_wxluatag_wxLuaDebuggerServer); ! // call StartClient ! returns = self->StartClient(); // push the result flag lua_pushboolean(L, returns); *************** *** 236,253 **** } - // void DisplayStackDialog(wxWindow *pParent) - static int LUACALL wxLua_wxLuaDebuggerServer_DisplayStackDialog(lua_State *L) - { - wxLuaState wxlState(L); - // wxWindow pParent - wxWindow * pParent = (wxWindow *)wxlState.GetUserDataType(2, s_wxluatag_wxWindow); - // get this - wxLuaDebuggerServer * self = (wxLuaDebuggerServer *)wxlState.GetUserDataType(1, s_wxluatag_wxLuaDebuggerServer); - // call DisplayStackDialog - self->DisplayStackDialog(pParent); - - return 0; - } - // bool EvaluateExpr(int exprRef, const wxString &expr) static int LUACALL wxLua_wxLuaDebuggerServer_EvaluateExpr(lua_State *L) --- 251,254 ---- *************** *** 269,272 **** --- 270,287 ---- } + // void DisplayStackDialog(wxWindow *pParent) + static int LUACALL wxLua_wxLuaDebuggerServer_DisplayStackDialog(lua_State *L) + { + wxLuaState wxlState(L); + // wxWindow pParent + wxWindow * pParent = (wxWindow *)wxlState.GetUserDataType(2, s_wxluatag_wxWindow); + // get this + wxLuaDebuggerServer * self = (wxLuaDebuggerServer *)wxlState.GetUserDataType(1, s_wxluatag_wxLuaDebuggerServer); + // call DisplayStackDialog + self->DisplayStackDialog(pParent); + + return 0; + } + static int LUACALL wxLua_wxLuaDebuggerServer_destructor(lua_State *L) { *************** *** 301,306 **** static WXLUAMETHOD s_wxLuaDebuggerServer_methods[] = { { LuaConstructor, "wxLuaDebuggerServer", wxLua_wxLuaDebuggerServer_constructor, 1, 1, { &s_wxluaarg_Number, 0 } }, { LuaMethod, "StartClient", wxLua_wxLuaDebuggerServer_StartClient, 0, 0, { 0 } }, - { LuaMethod, "StartServerThread", wxLua_wxLuaDebuggerServer_StartServerThread, 0, 0, { 0 } }, { LuaMethod, "AddBreakPoint", wxLua_wxLuaDebuggerServer_AddBreakPoint, 2, 2, { &s_wxluaarg_String, &s_wxluaarg_Number, 0 } }, { LuaMethod, "RemoveBreakPoint", wxLua_wxLuaDebuggerServer_RemoveBreakPoint, 2, 2, { &s_wxluaarg_String, &s_wxluaarg_Number, 0 } }, --- 316,322 ---- static WXLUAMETHOD s_wxLuaDebuggerServer_methods[] = { { LuaConstructor, "wxLuaDebuggerServer", wxLua_wxLuaDebuggerServer_constructor, 1, 1, { &s_wxluaarg_Number, 0 } }, + { LuaMethod, "StartServer", wxLua_wxLuaDebuggerServer_StartServer, 0, 0, { 0 } }, + { LuaMethod, "StopServer", wxLua_wxLuaDebuggerServer_StopServer, 0, 0, { 0 } }, { LuaMethod, "StartClient", wxLua_wxLuaDebuggerServer_StartClient, 0, 0, { 0 } }, { LuaMethod, "AddBreakPoint", wxLua_wxLuaDebuggerServer_AddBreakPoint, 2, 2, { &s_wxluaarg_String, &s_wxluaarg_Number, 0 } }, { LuaMethod, "RemoveBreakPoint", wxLua_wxLuaDebuggerServer_RemoveBreakPoint, 2, 2, { &s_wxluaarg_String, &s_wxluaarg_Number, 0 } }, *************** *** 313,318 **** { LuaMethod, "Break", wxLua_wxLuaDebuggerServer_Break, 0, 0, { 0 } }, { LuaMethod, "Reset", wxLua_wxLuaDebuggerServer_Reset, 0, 0, { 0 } }, - { LuaMethod, "DisplayStackDialog", wxLua_wxLuaDebuggerServer_DisplayStackDialog, 1, 1, { &s_wxluatag_wxWindow, 0 } }, { LuaMethod, "EvaluateExpr", wxLua_wxLuaDebuggerServer_EvaluateExpr, 2, 2, { &s_wxluaarg_Number, &s_wxluaarg_String, 0 } }, { LuaDelete, "wxLuaDebuggerServer", wxLua_wxLuaDebuggerServer_destructor, 0, 0, {0} }, { LuaMethod, "Delete", wxLua_wxLuaDebuggerServer_Delete, 0, 0, {0} }, --- 329,334 ---- { LuaMethod, "Break", wxLua_wxLuaDebuggerServer_Break, 0, 0, { 0 } }, { LuaMethod, "Reset", wxLua_wxLuaDebuggerServer_Reset, 0, 0, { 0 } }, { LuaMethod, "EvaluateExpr", wxLua_wxLuaDebuggerServer_EvaluateExpr, 2, 2, { &s_wxluaarg_Number, &s_wxluaarg_String, 0 } }, + { LuaMethod, "DisplayStackDialog", wxLua_wxLuaDebuggerServer_DisplayStackDialog, 1, 1, { &s_wxluatag_wxWindow, 0 } }, { LuaDelete, "wxLuaDebuggerServer", wxLua_wxLuaDebuggerServer_destructor, 0, 0, {0} }, { LuaMethod, "Delete", wxLua_wxLuaDebuggerServer_Delete, 0, 0, {0} }, |
From: John L. <jr...@us...> - 2006-10-04 22:07:28
|
Update of /cvsroot/wxlua/wxLua/samples In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv29706/wxLua/samples Modified Files: editor.wx.lua Log Message: check return values of debuger server to exit more gracefully on failure move port number into wxLuaDebuggerBase Index: editor.wx.lua =================================================================== RCS file: /cvsroot/wxlua/wxLua/samples/editor.wx.lua,v retrieving revision 1.30 retrieving revision 1.31 diff -C2 -d -r1.30 -r1.31 *** editor.wx.lua 4 Oct 2006 05:55:03 -0000 1.30 --- editor.wx.lua 4 Oct 2006 22:07:23 -0000 1.31 *************** *** 1523,1531 **** frame:Connect(ID_ATTACH_DEBUG, wx.wxEVT_COMMAND_MENU_SELECTED, function (event) debugServer = wx.wxLuaDebuggerServer(portNumber) if debugServer then ! debugServer:StartServerThread() end - DisplayOutput("Waiting for client connect. Start client with wxLua -d"..wx.wxGetHostName()..":"..portNumber.."\n") portNumber = portNumber + 1 end) --- 1523,1536 ---- frame:Connect(ID_ATTACH_DEBUG, wx.wxEVT_COMMAND_MENU_SELECTED, function (event) + local ok = false debugServer = wx.wxLuaDebuggerServer(portNumber) if debugServer then ! ok = debugServer:StartServer() ! end ! if ok then ! DisplayOutput("Waiting for client connect. Start client with wxLua -d"..wx.wxGetHostName()..":"..portNumber.."\n") ! else ! DisplayOutput("Unable to create debugger server.\n") end portNumber = portNumber + 1 end) *************** *** 1540,1543 **** --- 1545,1554 ---- if not debugServer then return nil end + local ok = debugServer:StartServer() + if not ok then + debugServer:Delete() + return nil + end + function DownloadBreakpoints(editor, fileName) local nextLine = editor:MarkerNext(0, BREAKPOINT_MARKER_VALUE) *************** *** 1694,1703 **** frame:Connect(ID_START_DEBUG, wx.wxEVT_COMMAND_MENU_SELECTED, function (event) debugServer = CreateDebugServer() if debugServer then ! debugServer:StartClient() SetAllEditorsReadOnly(true) end ! DisplayOutput("Waiting for client connection.\n") portNumber = portNumber + 1 end) --- 1705,1721 ---- frame:Connect(ID_START_DEBUG, wx.wxEVT_COMMAND_MENU_SELECTED, function (event) + local ok = false debugServer = CreateDebugServer() if debugServer then ! ok = debugServer:StartClient() SetAllEditorsReadOnly(true) end ! ! if debugServer and ok then ! DisplayOutput("Waiting for client connection.\n") ! else ! DisplayOutput("Unable to create debugger server.\n"..tostring(debugServer)..tostring(ok)) ! end ! portNumber = portNumber + 1 end) |
From: John L. <jr...@us...> - 2006-10-04 22:07:28
|
Update of /cvsroot/wxlua/wxLua/modules/wxluadebug/src In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv29706/wxLua/modules/wxluadebug/src Modified Files: wxldebug.cpp Log Message: check return values of debuger server to exit more gracefully on failure move port number into wxLuaDebuggerBase Index: wxldebug.cpp =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxluadebug/src/wxldebug.cpp,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -d -r1.21 -r1.22 *** wxldebug.cpp 3 Oct 2006 05:12:45 -0000 1.21 --- wxldebug.cpp 4 Oct 2006 22:07:23 -0000 1.22 *************** *** 25,28 **** --- 25,33 ---- #include "wxluadebug/include/wxldebug.h" + #define lua_Debug_to_String(ld) \ + wxString::Format(wxT("%p event=%d name='%s' namewhat='%s' what='%s' source='%s' currentline=%d nups=%d linedefined=%d lastlinedefined=%d short_src='%s' i_ci=%d"), \ + &ld, ld.event, lua2wx(ld.name).c_str(), lua2wx(ld.namewhat).c_str(), lua2wx(ld.what).c_str(), lua2wx(ld.source).c_str(), ld.currentline, ld.nups, ld.linedefined, ld.lastlinedefined, lua2wx(ld.short_src).c_str(), ld.i_ci) + + // ---------------------------------------------------------------------------- // wxLuaDebugDataItem *************** *** 124,128 **** int wxLuaDebugData::SortFunction(wxLuaDebugDataItem *elem1, wxLuaDebugDataItem *elem2 ) { ! return wxStrcmp(elem1->GetName(), elem2->GetName()); } --- 129,141 ---- int wxLuaDebugData::SortFunction(wxLuaDebugDataItem *elem1, wxLuaDebugDataItem *elem2 ) { ! int ret = elem1->GetName().Cmp(elem2->GetName()); ! if (ret == 0) // can be true for unnamed "(*temporary)" vars ! { ! ret = elem1->GetType().Cmp(elem2->GetType()); ! if (ret == 0) ! ret = elem1->GetValue().Cmp(elem2->GetValue()); ! } ! ! return ret; } *************** *** 136,140 **** lua_Debug luaDebug = INIT_LUA_DEBUG; int nIndex = 0; - bool fFirst = true; int count = 0; --- 149,152 ---- *************** *** 143,171 **** if (lua_getinfo(L, "Sln", &luaDebug)) { ! wxString stackItem; ! wxString name = lua2wx(luaDebug.name); ! wxString source = lua2wx(luaDebug.source); ! // skip stack frames that do not have line number int currentLine = luaDebug.currentline; ! if (!fFirst || (currentLine != -1)) { if (currentLine == -1) currentLine = 0; if (luaDebug.name != NULL) ! stackItem = wxString::Format(_("function %s line %u"), name.c_str(), currentLine); else ! stackItem = wxString::Format(_("line %u"), currentLine); ! ! wxLuaDebugDataItem *item = new wxLuaDebugDataItem(stackItem, wxT(""), wxT(""), source, nIndex, 0); ! ! if (item != NULL) ! { ! Add(item); ! count++; ! } ! fFirst = false; } } --- 155,178 ---- if (lua_getinfo(L, "Sln", &luaDebug)) { ! //wxPrintf(wxString(lua_Debug_to_String(luaDebug) + wxT("\n")).c_str()); ! // skip stack frames that do not have line number, always add first int currentLine = luaDebug.currentline; ! if ((count == 0) || (currentLine != -1)) { + wxString name; + wxString source = lua2wx(luaDebug.source); + if (currentLine == -1) currentLine = 0; if (luaDebug.name != NULL) ! name = wxString::Format(_("function %s line %u"), lua2wx(luaDebug.name).c_str(), currentLine); else ! name = wxString::Format(_("line %u"), currentLine); ! wxLuaDebugDataItem *item = new wxLuaDebugDataItem(name, wxT(""), wxT(""), source, nIndex, 0); ! Add(item); ! count++; } } *************** *** 193,196 **** --- 200,205 ---- while (!name.IsEmpty()) { + //wxPrintf(wxString(lua_Debug_to_String(luaDebug) + wxT(" lua_getlocal :") + name + wxT("\n")).c_str()); + wxString type; wxString value; *************** *** 200,204 **** int nRef = LUA_NOREF; - if (lua_istable(L, -1)) { --- 209,212 ---- *************** *** 211,219 **** wxLuaDebugDataItem *item = new wxLuaDebugDataItem(name, type, value, source, nRef, 0); ! if (item != NULL) ! { ! Add(item); ! count++; ! } name = lua2wx(lua_getlocal(L, &luaDebug, ++idx)); --- 219,224 ---- wxLuaDebugDataItem *item = new wxLuaDebugDataItem(name, type, value, source, nRef, 0); ! Add(item); ! count++; name = lua2wx(lua_getlocal(L, &luaDebug, ++idx)); *************** *** 270,278 **** wxLuaDebugDataItem *item = new wxLuaDebugDataItem(name, type, value, source, nRef, nIndex); ! if (item != NULL) ! { ! Add(item); ! count++; ! } } --- 275,280 ---- wxLuaDebugDataItem *item = new wxLuaDebugDataItem(name, type, value, source, nRef, nIndex); ! Add(item); ! count++; } *************** *** 293,296 **** --- 295,301 ---- switch (l_type) { + case LUA_TNONE: + type = wxT("None"); + value = wxEmptyString; case LUA_TNIL: type = wxT("Nil"); *************** *** 347,351 **** default : ! type = wxT("Unknown data type"); break; } --- 352,357 ---- default : ! type = wxT("Unknown data type"); ! value = wxEmptyString; break; } *************** *** 385,391 **** { if (nItems == 0) ! return wxString::Format(wxT("0x%p (tag %u)"), pItem, nTag); ! return wxString::Format(wxT("0x%p (approx %u items) (tag %u)"), pItem, nItems, nTag); } --- 391,397 ---- { if (nItems == 0) ! return wxString::Format(wxT("0x%p (tag %d)"), pItem, nTag); ! return wxString::Format(wxT("0x%p (approx %d items) (tag %d)"), pItem, nItems, nTag); } *************** *** 393,397 **** return wxString::Format(wxT("0x%p"), pItem); ! return wxString::Format(wxT("0x%p (approx %u items)"), pItem, nItems); } --- 399,403 ---- return wxString::Format(wxT("0x%p"), pItem); ! return wxString::Format(wxT("0x%p (approx %d items)"), pItem, nItems); } *************** *** 412,416 **** return wxString::Format(wxT("0x%p (%s)"), lua_touserdata(L, index), pTagName.c_str()); ! return wxString::Format(wxT("0x%p (%u)"), lua_touserdata(L, index), nTag); } --- 418,422 ---- return wxString::Format(wxT("0x%p (%s)"), lua_touserdata(L, index), pTagName.c_str()); ! return wxString::Format(wxT("0x%p (%d)"), lua_touserdata(L, index), nTag); } |
From: John L. <jr...@us...> - 2006-10-04 22:07:27
|
Update of /cvsroot/wxlua/wxLua/modules/wxluasocket/include In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv29706/wxLua/modules/wxluasocket/include Modified Files: dservice.h wxldserv.h Log Message: check return values of debuger server to exit more gracefully on failure move port number into wxLuaDebuggerBase Index: wxldserv.h =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxluasocket/include/wxldserv.h,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -d -r1.21 -r1.22 *** wxldserv.h 4 Oct 2006 05:55:02 -0000 1.21 --- wxldserv.h 4 Oct 2006 22:07:23 -0000 1.22 *************** *** 137,143 **** { public: ! wxLuaDebuggerBase(); virtual ~wxLuaDebuggerBase(); // These functions all send socket commands wxLUASOCKET_DEBUGGER_CMD_XXX // and the appropriate data to the debuggee. --- 137,151 ---- { public: ! wxLuaDebuggerBase(int port_number); virtual ~wxLuaDebuggerBase(); + // Start the debugger server to listen for a debuggee. After creation + // you must call StartServer to actually start the server. + virtual bool StartServer() = 0; + // Stop the debugger server + virtual bool StopServer() = 0; + // Start a debuggee client to be debugged by this + virtual bool StartClient() = 0; + // These functions all send socket commands wxLUASOCKET_DEBUGGER_CMD_XXX // and the appropriate data to the debuggee. *************** *** 191,194 **** --- 199,205 ---- void OnEndDebugeeProcess(wxProcessEvent& event); + // Get the port number the socket is using + int GetPortNumber() const { return m_port_number; } + // Set the program name to start the debuggee target with // Note: If the the program name is empty when this class is created, it *************** *** 206,209 **** --- 217,221 ---- protected: + int m_port_number; // the socket port to listen to wxLuaStackDialog *m_stackDialog; wxProcess *m_debuggeeProcess; // wxProcess of the debuggee *************** *** 245,249 **** public: ! wxLuaDebuggerServer(int portNumber); virtual ~wxLuaDebuggerServer(); --- 257,261 ---- public: ! wxLuaDebuggerServer(int port_number); virtual ~wxLuaDebuggerServer(); *************** *** 251,257 **** bool StopServer(); bool StartClient(); bool StartServerThread(); bool WaitForConnect(int timeOut); - void ThreadFunction(); --- 263,269 ---- bool StopServer(); bool StartClient(); + bool StartServerThread(); bool WaitForConnect(int timeOut); void ThreadFunction(); *************** *** 261,265 **** wxLuaSocket *m_serverSocket; wxLuaSocket *m_acceptedSocket; - int m_portNumber; wxLuaDebuggerServer::LuaThread *m_pThread; bool m_fShutdown; --- 273,276 ---- *************** *** 281,285 **** { public: ! wxLuaDebuggerwxSocketServer(int portNumber); virtual ~wxLuaDebuggerwxSocketServer(); --- 292,296 ---- { public: ! wxLuaDebuggerwxSocketServer(int port_number); virtual ~wxLuaDebuggerwxSocketServer(); *************** *** 287,291 **** bool StopServer(); bool StartClient(); - bool StartServerThread() { return true; } virtual wxLuaSocketBase* GetSocketBase() { return m_acceptedSocket; } --- 298,301 ---- *************** *** 299,303 **** wxSocketServer *m_serverSocket; wxLuaDebugSocket *m_acceptedSocket; - int m_portNumber; private: --- 309,312 ---- Index: dservice.h =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxluasocket/include/dservice.h,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** dservice.h 4 Oct 2006 05:55:02 -0000 1.19 --- dservice.h 4 Oct 2006 22:07:23 -0000 1.20 *************** *** 14,17 **** --- 14,31 ---- // wxWidgets Socket Sample + // Ray Gilbert moved class definitions out of wxLuaDebuggerServer, wxLuaDebugIO + // to allow alternate debugger model + // + // Original Debugging Model: + // wxLuaDebuggerServer, wxLuaDebugTarget + // The current process acts as a server - debugger (wxLuaDebuggerServer) + // starts a new process which starts up as a client - debuggee (wxLuaDebugTarget) + // that connects back to server process. + // + // Alternative Debugging Model: + // wxLuaDebugService, wxLuaDebuggee, wxLuaDebugger + // The current process acts as a server - debuggee (wxLuaDebugService; wxLuaDebuggee). + // This service waits for client - debugger to connect. + #ifndef WX_LUA_DEBUGGERSERVICE_H #define WX_LUA_DEBUGGERSERVICE_H *************** *** 269,273 **** { public: ! wxLuaDebugger(); virtual ~wxLuaDebugger(); --- 283,287 ---- { public: ! wxLuaDebugger(int port_number = WXLUA_SOCKET_PORT); virtual ~wxLuaDebugger(); |
From: John L. <jr...@us...> - 2006-10-04 22:07:27
|
Update of /cvsroot/wxlua/wxLua/bindings/wxluasocket In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv29706/wxLua/bindings/wxluasocket Modified Files: wxluasocket.i Log Message: check return values of debuger server to exit more gracefully on failure move port number into wxLuaDebuggerBase Index: wxluasocket.i =================================================================== RCS file: /cvsroot/wxlua/wxLua/bindings/wxluasocket/wxluasocket.i,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** wxluasocket.i 28 Sep 2006 22:26:02 -0000 1.5 --- wxluasocket.i 4 Oct 2006 22:07:22 -0000 1.6 *************** *** 22,27 **** wxLuaDebuggerServer(int portNumber) bool StartClient() ! bool StartServerThread() bool AddBreakPoint(const wxString &fileName, int lineNumber) bool RemoveBreakPoint(const wxString &fileName, int lineNumber) --- 22,29 ---- wxLuaDebuggerServer(int portNumber) + bool StartServer() + bool StopServer() bool StartClient() ! bool AddBreakPoint(const wxString &fileName, int lineNumber) bool RemoveBreakPoint(const wxString &fileName, int lineNumber) *************** *** 34,39 **** bool Break() bool Reset() - void DisplayStackDialog(wxWindow *pParent) bool EvaluateExpr(int exprRef, const wxString &expr) %endclass --- 36,42 ---- bool Break() bool Reset() bool EvaluateExpr(int exprRef, const wxString &expr) + + void DisplayStackDialog(wxWindow *pParent) %endclass |
From: John L. <jr...@us...> - 2006-10-04 22:07:27
|
Update of /cvsroot/wxlua/wxLua/apps/wxlua/src In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv29706/wxLua/apps/wxlua/src Modified Files: editor.h Log Message: check return values of debuger server to exit more gracefully on failure move port number into wxLuaDebuggerBase Index: editor.h =================================================================== RCS file: /cvsroot/wxlua/wxLua/apps/wxlua/src/editor.h,v retrieving revision 1.24 retrieving revision 1.25 diff -C2 -d -r1.24 -r1.25 *** editor.h 3 Oct 2006 05:12:43 -0000 1.24 --- editor.h 4 Oct 2006 22:07:19 -0000 1.25 *************** *** 9,14 **** extern const unsigned char wxLuaEditor[]; ! const size_t wxLuaEditor_len = 73073; ! const unsigned char wxLuaEditor[73074] = { 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 61, 45, 45, 45, 10, 45, 45, 32, 78, 97,109,101, 58, 32, 32, 32, 32, 32, 32, 32, 32, 69,100,105,116,111,114, 46,119,120, 46,108,117, 97, 10, --- 9,14 ---- extern const unsigned char wxLuaEditor[]; ! const size_t wxLuaEditor_len = 73621; ! const unsigned char wxLuaEditor[73622] = { 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 61, 45, 45, 45, 10, 45, 45, 32, 78, 97,109,101, 58, 32, 32, 32, 32, 32, 32, 32, 32, 69,100,105,116,111,114, 46,119,120, 46,108,117, 97, 10, *************** *** 1535,1543 **** 102,114, 97,109,101, 58, 67,111,110,110,101, 99,116, 40, 73, 68, 95, 65, 84, 84, 65, 67, 72, 95, 68, 69, 66, 85, 71, 44, 32,119,120, 46,119,120, 69, 86, 84, 95, 67, 79, 77, 77, 65, 78, 68, 95, 77, 69, 78, 85, 95, 83, 69, 76, 69, 67, 84, 69, 68, 44, 10, 32, 32, 32, 32, 32, 32, 32, 32,102,117,110, 99,116,105,111,110, 32, 40,101,118,101,110,116, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32, 61, 32,119,120, 46,119,120, 76,117, 97, 68,101, 98,117,103,103,101,114, 83,101,114,118,101,114, 40,112,111,114,116, 78,117,109, 98,101,114, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32,116,104,101,110, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 83,116, 97,114,116, 83,101,114,118,101,114, 84,104,114,101, 97,100, 40, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 68,105,115,112,108, 97,121, 79,117,116,112,117,116, 40, 34, 87, 97,105,116,105,110,103, 32,102,111,114, 32, 99,108,105,101,110,116, 32, 99,111,110,110,101, 99,116, 46, 32, 83,116, 97,114,116, 32, 99,108,105,101,110,116, 32,119,105,116,104, 32,119,120, 76,117, 97, 32, 45,100, 34, 46, 46,119,120, 46,119,120, 71,101,116, 72,111,115,116, 78, 97,109,101, 40, 41, 46, 46, 34, 58, 34, 46, 46,112,111,114,116, 78,117,109, 98,101,114, 46, 46, 34, 92,110, 34, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,112,111,114,116, 78,117,109, 98,101,114, 32, 61, 32,112,111,114,116, 78,117,109, 98,101,114, 32, 43, 32, 49, 10, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 41, 10, --- 1535,1548 ---- 102,114, 97,109,101, 58, 67,111,110,110,101, 99,116, 40, 73, 68, 95, 65, 84, 84, 65, 67, 72, 95, 68, 69, 66, 85, 71, 44, 32,119,120, 46,119,120, 69, 86, 84, 95, 67, 79, 77, 77, 65, 78, 68, 95, 77, 69, 78, 85, 95, 83, 69, 76, 69, 67, 84, 69, 68, 44, 10, 32, 32, 32, 32, 32, 32, 32, 32,102,117,110, 99,116,105,111,110, 32, 40,101,118,101,110,116, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,111,107, 32, 61, 32,102, 97,108,115,101, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32, 61, 32,119,120, 46,119,120, 76,117, 97, 68,101, 98,117,103,103,101,114, 83,101,114,118,101,114, 40,112,111,114,116, 78,117,109, 98,101,114, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32,116,104,101,110, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,111,107, 32, 61, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 83,116, 97,114,116, 83,101,114,118,101,114, 40, 41, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,111,107, 32,116,104,101,110, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 68,105,115,112,108, 97,121, 79,117,116,112,117,116, 40, 34, 87, 97,105,116,105,110,103, 32,102,111,114, 32, 99,108,105,101,110,116, 32, 99,111,110,110,101, 99,116, 46, 32, 83,116, 97,114,116, 32, 99,108,105,101,110,116, 32,119,105,116,104, 32,119,120, 76,117, 97, 32, 45,100, 34, 46, 46,119,120, 46,119,120, 71,101,116, 72,111,115,116, 78, 97,109,101, 40, 41, 46, 46, 34, 58, 34, 46, 46,112,111,114,116, 78,117,109, 98,101,114, 46, 46, 34, 92,110, 34, 41, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,108,115,101, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 68,105,115,112,108, 97,121, 79,117,116,112,117,116, 40, 34, 85,110, 97, 98,108,101, 32,116,111, 32, 99,114,101, 97,116,101, 32,100,101, 98,117,103,103,101,114, 32,115,101,114,118,101,114, 46, 92,110, 34, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,112,111,114,116, 78,117,109, 98,101,114, 32, 61, 32,112,111,114,116, 78,117,109, 98,101,114, 32, 43, 32, 49, 10, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 41, 10, *************** *** 1552,1555 **** --- 1557,1566 ---- 32, 32, 32, 32,105,102, 32,110,111,116, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32,116,104,101,110, 32,114,101,116,117,114,110, 32,110,105,108, 32,101,110,100, 10, 10, + 32, 32, 32, 32,108,111, 99, 97,108, 32,111,107, 32, 61, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 83,116, 97,114,116, 83,101,114,118,101,114, 40, 41, 10, + 32, 32, 32, 32,105,102, 32,110,111,116, 32,111,107, 32,116,104,101,110, 10, + 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 68,101,108,101,116,101, 40, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32,114,101,116,117,114,110, 32,110,105,108, 10, + 32, 32, 32, 32,101,110,100, 10, + 10, 32, 32, 32, 32,102,117,110, 99,116,105,111,110, 32, 68,111,119,110,108,111, 97,100, 66,114,101, 97,107,112,111,105,110,116,115, 40,101,100,105,116,111,114, 44, 32,102,105,108,101, 78, 97,109,101, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,110,101,120,116, 76,105,110,101, 32, 61, 32,101,100,105,116,111,114, 58, 77, 97,114,107,101,114, 78,101,120,116, 40, 48, 44, 32, 66, 82, 69, 65, 75, 80, 79, 73, 78, 84, 95, 77, 65, 82, 75, 69, 82, 95, 86, 65, 76, 85, 69, 41, 10, *************** *** 1568,1575 **** 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,101,100,105,116,111,114, 84,101,120,116, 32, 61, 32,101,100,105,116,111,114, 58, 71,101,116, 84,101,120,116, 40, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,102,105,108,101, 80, 97,116,104, 32, 32, 32, 61, 32, 77, 97,107,101, 68,101, 98,117,103, 70,105,108,101, 78, 97,109,101, 40,101,100,105,116,111,114, 44, 32,100,111, 99,117,109,101,110,116, 46,102,105,108,101, 80, 97,116,104, 41, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 82,117,110, 40,102,105,108,101, 80, 97,116,104, 44, 32,101,100,105,116,111,114, 84,101,120,116, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 68,111,119,110,108,111, 97,100, 66,114,101, 97,107,112,111,105,110,116,115, 40,101,100,105,116,111,114, 44, 32,102,105,108,101, 80, 97,116,104, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,111,107, 32, 61, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 83,116,101,112, 40, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,102, 73,115, 67,111,110,110,101, 99,116,101,100, 32, 61, 32,111,107, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,102, 73,115, 82,117,110,110,105,110,103, 32, 61, 32,111,107, 10, --- 1579,1588 ---- 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,101,100,105,116,111,114, 84,101,120,116, 32, 61, 32,101,100,105,116,111,114, 58, 71,101,116, 84,101,120,116, 40, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,102,105,108,101, 80, 97,116,104, 32, 32, 32, 61, 32, 77, 97,107,101, 68,101, 98,117,103, 70,105,108,101, 78, 97,109,101, 40,101,100,105,116,111,114, 44, 32,100,111, 99,117,109,101,110,116, 46,102,105,108,101, 80, 97,116,104, 41, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,111,107, 32, 61, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 82,117,110, 40,102,105,108,101, 80, 97,116,104, 44, 32,101,100,105,116,111,114, 84,101,120,116, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 68,111,119,110,108,111, 97,100, 66,114,101, 97,107,112,111,105,110,116,115, 40,101,100,105,116,111,114, 44, 32,102,105,108,101, 80, 97,116,104, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,111,107, 32,116,104,101,110, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,111,107, 32, 61, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 83,116,101,112, 40, 41, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,102, 73,115, 67,111,110,110,101, 99,116,101,100, 32, 61, 32,111,107, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,102, 73,115, 82,117,110,110,105,110,103, 32, 61, 32,111,107, 10, *************** *** 1704,1713 **** 102,114, 97,109,101, 58, 67,111,110,110,101, 99,116, 40, 73, 68, 95, 83, 84, 65, 82, 84, 95, 68, 69, 66, 85, 71, 44, 32,119,120, 46,119,120, 69, 86, 84, 95, 67, 79, 77, 77, 65, 78, 68, 95, 77, 69, 78, 85, 95, 83, 69, 76, 69, 67, 84, 69, 68, 44, 10, 32, 32, 32, 32, 32, 32, 32, 32,102,117,110, 99,116,105,111,110, 32, 40,101,118,101,110,116, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32, 61, 32, 67,114,101, 97,116,101, 68,101, 98,117,103, 83,101,114,118,101,114, 40, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32,116,104,101,110, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 83,116, 97,114,116, 67,108,105,101,110,116, 40, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 83,101,116, 65,108,108, 69,100,105,116,111,114,115, 82,101, 97,100, 79,110,108,121, 40,116,114,117,101, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 68,105,115,112,108, 97,121, 79,117,116,112,117,116, 40, 34, 87, 97,105,116,105,110,103, 32,102,111,114, 32, 99,108,105,101,110,116, 32, 99,111,110,110,101, 99,116,105,111,110, 46, 92,110, 34, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,112,111,114,116, 78,117,109, 98,101,114, 32, 61, 32,112,111,114,116, 78,117,109, 98,101,114, 32, 43, 32, 49, 10, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 41, 10, --- 1717,1733 ---- 102,114, 97,109,101, 58, 67,111,110,110,101, 99,116, 40, 73, 68, 95, 83, 84, 65, 82, 84, 95, 68, 69, 66, 85, 71, 44, 32,119,120, 46,119,120, 69, 86, 84, 95, 67, 79, 77, 77, 65, 78, 68, 95, 77, 69, 78, 85, 95, 83, 69, 76, 69, 67, 84, 69, 68, 44, 10, 32, 32, 32, 32, 32, 32, 32, 32,102,117,110, 99,116,105,111,110, 32, 40,101,118,101,110,116, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,111,107, 32, 61, 32,102, 97,108,115,101, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32, 61, 32, 67,114,101, 97,116,101, 68,101, 98,117,103, 83,101,114,118,101,114, 40, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32,116,104,101,110, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,111,107, 32, 61, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 83,116, 97,114,116, 67,108,105,101,110,116, 40, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 83,101,116, 65,108,108, 69,100,105,116,111,114,115, 82,101, 97,100, 79,110,108,121, 40,116,114,117,101, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, ! 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32, 97,110,100, 32,111,107, 32,116,104,101,110, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 68,105,115,112,108, 97,121, 79,117,116,112,117,116, 40, 34, 87, 97,105,116,105,110,103, 32,102,111,114, 32, 99,108,105,101,110,116, 32, 99,111,110,110,101, 99,116,105,111,110, 46, 92,110, 34, 41, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,108,115,101, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 68,105,115,112,108, 97,121, 79,117,116,112,117,116, 40, 34, 85,110, 97, 98,108,101, 32,116,111, 32, 99,114,101, 97,116,101, 32,100,101, 98,117,103,103,101,114, 32,115,101,114,118,101,114, 46, 92,110, 34, 46, 46,116,111,115,116,114,105,110,103, 40,100,101, 98,117,103, 83,101,114,118,101,114, 41, 46, 46,116,111,115,116,114,105,110,103, 40,111,107, 41, 41, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, ! 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,112,111,114,116, 78,117,109, 98,101,114, 32, 61, 32,112,111,114,116, 78,117,109, 98,101,114, 32, 43, 32, 49, 10, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 41, 10, |
From: John L. <jr...@us...> - 2006-10-04 22:07:27
|
Update of /cvsroot/wxlua/wxLua/modules/wxluadebug/include In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv29706/wxLua/modules/wxluadebug/include Modified Files: wxldebug.h Log Message: check return values of debuger server to exit more gracefully on failure move port number into wxLuaDebuggerBase Index: wxldebug.h =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxluadebug/include/wxldebug.h,v retrieving revision 1.27 retrieving revision 1.28 diff -C2 -d -r1.27 -r1.28 *** wxldebug.h 3 Oct 2006 05:12:45 -0000 1.27 --- wxldebug.h 4 Oct 2006 22:07:23 -0000 1.28 *************** *** 1,22 **** ///////////////////////////////////////////////////////////////////////////// ! // Purpose: Implements the debugger end of wxLua debugging session ! // Author: J. Winwood // Created: June 2003 // Copyright: (c) 2002 Lomtick Software. All rights reserved. // Licence: wxWidgets licence ///////////////////////////////////////////////////////////////////////////// - // Ray Gilbert moved class definitions out of wxLuaDebuggerServer, wxLuaDebugIO - // to allow alternate debugger model - // - // Original Debugging Model: - // wxLuaDebuggerServer, wxLuaDebugTarget - // The current process acts as a server - debugger (wxLuaDebuggerServer) - // starts a new process which starts up as a client - debuggee (wxLuaDebugTarget) - // that connects back to server process. - // - // Alternative Debugging Model: - // wxLuaDebugService, wxLuaDebuggee, wxLuaDebugger - // The current process acts as a server - debuggee (wxLuaDebugService; wxLuaDebuggee). - // This service waits for client - debugger to connect. #ifndef WX_LUA_DEBUG_H --- 1,9 ---- ///////////////////////////////////////////////////////////////////////////// ! // Purpose: lua and wxLua debugging code ! // Author: J. Winwood, John Labenski // Created: June 2003 // Copyright: (c) 2002 Lomtick Software. All rights reserved. // Licence: wxWidgets licence ///////////////////////////////////////////////////////////////////////////// #ifndef WX_LUA_DEBUG_H *************** *** 36,40 **** // ---------------------------------------------------------------------------- ! // wxLuaDebugDataItem // ---------------------------------------------------------------------------- --- 23,27 ---- // ---------------------------------------------------------------------------- ! // wxLuaDebugDataItem - // ---------------------------------------------------------------------------- *************** *** 62,72 **** private: ! wxString m_itemName; ! wxString m_itemType; ! wxString m_itemValue; ! wxString m_itemSource; ! int m_nReference; ! int m_nIndex; ! bool m_fExpanded; }; --- 49,59 ---- private: ! wxString m_itemName; ! wxString m_itemType; ! wxString m_itemValue; ! wxString m_itemSource; ! int m_nReference; ! int m_nIndex; ! bool m_fExpanded; }; *************** *** 88,93 **** wxLuaDebugData(const wxLuaDebugData &debugData) { Ref(debugData); } - virtual ~wxLuaDebugData() {} - // Get the data array, please use safe array access functions if possible wxLuaDebugDataItemArray* GetArray(); --- 75,78 ---- *************** *** 95,98 **** --- 80,85 ---- // wxArray functions mapped to the internal array w/ error checking + // The wxLuaDebugDataItem items added must be created with 'new' and + // will be deleted when this class is destroyed. size_t GetCount() const; wxLuaDebugDataItem* Item(size_t index) const; *************** *** 102,108 **** --- 89,102 ---- // returns the number of stack entries added int EnumerateStack(const wxLuaState& wxlState); + // fill this with the locals from a particular stack entry, if an item is a + // table then add a reference to it in the references array int EnumerateStackEntry(const wxLuaState& wxlState, int stackRef, wxArrayInt& references); + // fill this with the name and value of items in a table at the given reference, + // if the table has a sub table then add a reference to it to the references array int EnumerateTable(const wxLuaState& wxlState, int nRef, int nEntry, wxArrayInt& references); + // These functions are static to allow them to be used in other places to + // give a consistent feel to the display of lua values. + // Get a human readable string name of the lua_type(L, index) and the // value at the index, returns the value of lua_type |
From: John L. <jr...@us...> - 2006-10-04 05:55:09
|
Update of /cvsroot/wxlua/wxLua/modules/wxluasocket/include In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv10846/wxLua/modules/wxluasocket/include Modified Files: dservice.h wxldserv.h Log Message: add wxSocket implementation for wxLuaSockets... ifdefed off since it seems very slow and doesn't always connect Index: wxldserv.h =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxluasocket/include/wxldserv.h,v retrieving revision 1.20 retrieving revision 1.21 diff -C2 -d -r1.20 -r1.21 *** wxldserv.h 3 Oct 2006 19:52:16 -0000 1.20 --- wxldserv.h 4 Oct 2006 05:55:02 -0000 1.21 *************** *** 22,26 **** class WXDLLIMPEXP_WXLUASOCKET wxLuaDebuggerBase; - class WXDLLIMPEXP_WXLUASOCKET wxLuaDebuggerServer; class WXDLLIMPEXP_WXLUASOCKET wxLuaDebuggerEvent; class WXDLLIMPEXP_WXLUADEBUG wxLuaStackDialog; --- 22,25 ---- *************** *** 175,178 **** --- 174,180 ---- virtual wxLuaSocketBase* GetSocketBase() = 0; + // Send the event to this wxEvtHandler + virtual void SendEvent(wxEvent& event) { AddPendingEvent(event); } + // Get/Set the wxLuaStackDialog to show the stack of the debugged program wxLuaStackDialog* GetStackDialog() { return m_stackDialog; } *************** *** 216,219 **** --- 218,224 ---- }; + #define WXLUASOCKET_USE_C_SOCKET + #ifdef WXLUASOCKET_USE_C_SOCKET + // ---------------------------------------------------------------------------- // wxLuaDebuggerServer - a socket server for a lua program to communicate with a *************** *** 264,267 **** --- 269,313 ---- }; + #else // !WXLUASOCKET_USE_C_SOCKET + + // ---------------------------------------------------------------------------- + // wxLuaDebuggerwxServer - a socket server for a lua program to communicate with a + // wxLuaDebugTarget run in C++. + // ---------------------------------------------------------------------------- + class WXDLLIMPEXP_WXLUASOCKET wxLuaDebugSocket; + #include "wxluasocket/include/dservice.h" + + class WXDLLIMPEXP_WXLUASOCKET wxLuaDebuggerwxSocketServer : public wxLuaDebuggerBase + { + public: + wxLuaDebuggerwxSocketServer(int portNumber); + virtual ~wxLuaDebuggerwxSocketServer(); + + bool StartServer(); + bool StopServer(); + bool StartClient(); + bool StartServerThread() { return true; } + + virtual wxLuaSocketBase* GetSocketBase() { return m_acceptedSocket; } + + virtual void SendEvent(wxEvent& event) { ProcessEvent(event); } + + void OnServerEvent(wxSocketEvent& event); + void OnSocketEvent(wxSocketEvent& event); + + protected: + wxSocketServer *m_serverSocket; + wxLuaDebugSocket *m_acceptedSocket; + int m_portNumber; + + private: + DECLARE_EVENT_TABLE(); + DECLARE_ABSTRACT_CLASS(wxLuaDebuggerwxSocketServer) + }; + + typedef wxLuaDebuggerwxSocketServer wxLuaDebuggerServer; + + #endif // WXLUASOCKET_USE_C_SOCKET + // ---------------------------------------------------------------------------- // wxLuaDebuggerEvent Index: dservice.h =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxluasocket/include/dservice.h,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -d -r1.18 -r1.19 *** dservice.h 3 Oct 2006 05:12:45 -0000 1.18 --- dservice.h 4 Oct 2006 05:55:02 -0000 1.19 *************** *** 28,32 **** #include "wxlua/include/wxlua.h" - #include "wxluasocket/include/wxldserv.h" #include "wxluasocket/include/wxlsock.h" --- 28,31 ---- *************** *** 47,68 **** { public: - wxLuaDebugSocket(const wxLuaDebugSocket& debugSocket) : m_socket(debugSocket.m_socket) {} - wxLuaDebugSocket(wxSocketBase* sock) : m_socket(sock) {} wxLuaDebugSocket() : m_socket(NULL) {} virtual ~wxLuaDebugSocket() { Destroy(); } ! // Safely Destroy Socket ! bool Destroy() ! { ! if (m_socket) ! { ! wxSocketBase* sock = m_socket; ! m_socket = NULL; ! return sock->Destroy(); ! } ! ! return true; ! } // Get/Set the socket, if you set a new socket you must delete the --- 46,56 ---- { public: wxLuaDebugSocket() : m_socket(NULL) {} + wxLuaDebugSocket(wxSocketBase* sock) : m_socket(sock) {} virtual ~wxLuaDebugSocket() { Destroy(); } ! // Safely close and destroy the socket ! bool Destroy(); // Get/Set the socket, if you set a new socket you must delete the *************** *** 82,91 **** virtual int Write(const char *buffer, wxUint32 length); - // operators - bool operator==(wxLuaDebugSocket& debugSocket) - { - return debugSocket.m_socket == m_socket; - } - protected: wxSocketBase* m_socket; --- 70,73 ---- *************** *** 94,97 **** --- 76,81 ---- WX_DECLARE_USER_EXPORTED_LIST(wxLuaDebugSocket, wxLuaDebugSocketList, WXDLLIMPEXP_WXLUASOCKET); + #include "wxluasocket/include/wxldserv.h" + // ---------------------------------------------------------------------------- // wxLuaBreakPoint - Project BreakPoint - a filename/line pair *************** *** 258,262 **** void OnServerEvent(wxSocketEvent& event); void OnSocketEvent(wxSocketEvent& event); - void OnSocketLostEvent(wxSocketEvent& event); wxLuaDebugSocket* GetDebugSocket(wxSocketBase* sock); --- 242,245 ---- |
From: John L. <jr...@us...> - 2006-10-04 05:55:09
|
Update of /cvsroot/wxlua/wxLua/modules/wxluasocket/src In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv10846/wxLua/modules/wxluasocket/src Modified Files: dservice.cpp wxldserv.cpp wxldtarg.cpp wxlsock.cpp Log Message: add wxSocket implementation for wxLuaSockets... ifdefed off since it seems very slow and doesn't always connect Index: wxldtarg.cpp =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxluasocket/src/wxldtarg.cpp,v retrieving revision 1.28 retrieving revision 1.29 diff -C2 -d -r1.28 -r1.29 *** wxldtarg.cpp 3 Oct 2006 19:52:16 -0000 1.28 --- wxldtarg.cpp 4 Oct 2006 05:55:02 -0000 1.29 *************** *** 151,154 **** --- 151,155 ---- } } + return !m_fErrorsSeen; } *************** *** 185,196 **** { unsigned char debugCommand = 0; // wxLuaSocketDebuggerCommands_Type ! if (!m_clientSocket.ReadCmd(debugCommand)) { ! //wxMilliSleep(250); // FIXME slow down reading a bit and cross fingers ! continue; } - if (HandleDebuggerCmd(debugCommand) == -1) - fThreadRunning = false; } catch(...) --- 186,195 ---- { unsigned char debugCommand = 0; // wxLuaSocketDebuggerCommands_Type ! if (!m_clientSocket.ReadCmd(debugCommand) || ! (HandleDebuggerCmd(debugCommand) == -1)) { ! fThreadRunning = false; } } catch(...) Index: dservice.cpp =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxluasocket/src/dservice.cpp,v retrieving revision 1.25 retrieving revision 1.26 diff -C2 -d -r1.25 -r1.26 *** dservice.cpp 3 Oct 2006 05:12:45 -0000 1.25 --- dservice.cpp 4 Oct 2006 05:55:02 -0000 1.26 *************** *** 63,71 **** // ---------------------------------------------------------------------------- int wxLuaDebugSocket::Read(char *buffer, wxUint32 length) { wxCHECK_MSG(m_socket, 0, wxT("Invalid wxSocketBase")); ! m_socket->Read(buffer, length); ! return m_socket->LastCount(); } --- 63,85 ---- // ---------------------------------------------------------------------------- + bool wxLuaDebugSocket::Destroy() + { + if (m_socket) + { + wxSocketBase* sock = m_socket; + m_socket = NULL; + return sock->Destroy(); + } + + return true; + } + int wxLuaDebugSocket::Read(char *buffer, wxUint32 length) { wxCHECK_MSG(m_socket, 0, wxT("Invalid wxSocketBase")); ! if (m_socket->WaitForRead(20, 0)) ! return m_socket->Read(buffer, length).LastCount(); ! ! return 0; } *************** *** 73,78 **** { wxCHECK_MSG(m_socket, 0, wxT("Invalid wxSocketBase")); ! m_socket->Write(buffer, length); ! return m_socket->LastCount(); } --- 87,94 ---- { wxCHECK_MSG(m_socket, 0, wxT("Invalid wxSocketBase")); ! if (m_socket->WaitForWrite(20, 0)) ! return m_socket->Write(buffer, length).LastCount(); ! ! return 0; } Index: wxldserv.cpp =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxluasocket/src/wxldserv.cpp,v retrieving revision 1.27 retrieving revision 1.28 diff -C2 -d -r1.27 -r1.28 *** wxldserv.cpp 3 Oct 2006 19:52:16 -0000 1.27 --- wxldserv.cpp 4 Oct 2006 05:55:02 -0000 1.28 *************** *** 113,116 **** --- 113,117 ---- { wxCHECK_RET(m_luaDebugger, wxT("Invalid wxLuaDebuggerServer")); + wxBeginBusyCursor(); m_luaDebugger->EnumerateStack(); } *************** *** 119,122 **** --- 120,124 ---- { wxCHECK_RET(m_luaDebugger, wxT("Invalid wxLuaDebuggerServer")); + wxBeginBusyCursor(); m_luaDebugger->EnumerateStackEntry(nEntry); } *************** *** 125,128 **** --- 127,131 ---- { wxCHECK_RET(m_luaDebugger, wxT("Invalid wxLuaDebuggerServer")); + wxBeginBusyCursor(); m_luaDebugger->EnumerateTable(nRef, nEntry, (long)treeId.m_pItem); } *************** *** 131,134 **** --- 134,138 ---- { wxCHECK_RET(m_luaDebugger, wxT("Invalid wxLuaDebuggerServer")); + wxBeginBusyCursor(); m_luaDebugger->EnumerateTable(-1, -1, (long)treeId.m_pItem); } *************** *** 312,316 **** wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_ERROR, this); debugEvent.SetMessage(errMsg); ! AddPendingEvent(debugEvent); return ret == -1; --- 316,320 ---- wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_ERROR, this); debugEvent.SetMessage(errMsg); ! SendEvent(debugEvent); return ret == -1; *************** *** 332,336 **** { wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_BREAK, this, lineNumber, fileName); ! AddPendingEvent(debugEvent); } else return -1; --- 336,340 ---- { wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_BREAK, this, lineNumber, fileName); ! SendEvent(debugEvent); } else return -1; *************** *** 346,350 **** wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_PRINT, this); debugEvent.SetMessage(strMessage); ! AddPendingEvent(debugEvent); } else return -1; --- 350,354 ---- wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_PRINT, this); debugEvent.SetMessage(strMessage); ! SendEvent(debugEvent); } else return -1; *************** *** 360,364 **** wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_ERROR, this); debugEvent.SetMessage(strMessage); ! AddPendingEvent(debugEvent); } else return -1; --- 364,368 ---- wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_ERROR, this); debugEvent.SetMessage(strMessage); ! SendEvent(debugEvent); } else return -1; *************** *** 369,373 **** { wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_EXIT, this); ! AddPendingEvent(debugEvent); break; } --- 373,377 ---- { wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_EXIT, this); ! SendEvent(debugEvent); break; } *************** *** 380,384 **** wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_STACK_ENUM, this); debugEvent.SetDebugData(-1, debugData); ! AddPendingEvent(debugEvent); } else return -1; --- 384,388 ---- wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_STACK_ENUM, this); debugEvent.SetDebugData(-1, debugData); ! SendEvent(debugEvent); } else return -1; *************** *** 396,400 **** wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_STACK_ENTRY_ENUM, this); debugEvent.SetDebugData(stackRef, debugData); ! AddPendingEvent(debugEvent); } else return -1; --- 400,404 ---- wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_STACK_ENTRY_ENUM, this); debugEvent.SetDebugData(stackRef, debugData); ! SendEvent(debugEvent); } else return -1; *************** *** 412,416 **** wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_TABLE_ENUM, this); debugEvent.SetDebugData(itemNode, debugData); ! AddPendingEvent(debugEvent); } else return -1; --- 416,420 ---- wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_TABLE_ENUM, this); debugEvent.SetDebugData(itemNode, debugData); ! SendEvent(debugEvent); } else return -1; *************** *** 429,433 **** debugEvent.SetMessage(strResult); debugEvent.SetDebugData(exprRef); ! AddPendingEvent(debugEvent); } else return -1; --- 433,437 ---- debugEvent.SetMessage(strResult); debugEvent.SetDebugData(exprRef); ! SendEvent(debugEvent); } else return -1; *************** *** 446,450 **** { wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_BREAKPOINT_ADDED, this, line, fileName, enabled ? true : false); ! AddPendingEvent(debugEvent); } else return -1; --- 450,454 ---- { wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_BREAKPOINT_ADDED, this, line, fileName, enabled ? true : false); ! SendEvent(debugEvent); } else return -1; *************** *** 461,465 **** { wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_BREAKPOINT_REMOVED, this, line, fileName); ! AddPendingEvent(debugEvent); } else return -1; --- 465,469 ---- { wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_BREAKPOINT_REMOVED, this, line, fileName); ! SendEvent(debugEvent); } else return -1; *************** *** 492,495 **** --- 496,501 ---- else event.Skip(); + + wxEndBusyCursor(); } void wxLuaDebuggerBase::OnDebugStackEntryEnum(wxLuaDebuggerEvent &event) *************** *** 499,502 **** --- 505,510 ---- else event.Skip(); + + wxEndBusyCursor(); } void wxLuaDebuggerBase::OnDebugTableEnum(wxLuaDebuggerEvent &event) *************** *** 506,509 **** --- 514,519 ---- else event.Skip(); + + wxEndBusyCursor(); } *************** *** 519,522 **** --- 529,534 ---- } + #ifdef WXLUASOCKET_USE_C_SOCKET + // ---------------------------------------------------------------------------- // wxLuaDebuggerServer::LuaThread *************** *** 712,717 **** HandleDebuggeeEvent(debugEvent); } - //else - // wxMilliSleep(250); // FIXME slow down reading a bit and cross fingers } } --- 724,727 ---- *************** *** 734,735 **** --- 744,901 ---- } } + + #else // !WXLUASOCKET_USE_C_SOCKET + + // --------------------------------------------------------------------------- + + // --------------------------------------------------------------------------- + IMPLEMENT_ABSTRACT_CLASS(wxLuaDebuggerwxSocketServer, wxLuaDebuggerBase) + + BEGIN_EVENT_TABLE(wxLuaDebuggerwxSocketServer, wxLuaDebuggerBase) + EVT_SOCKET(ID_WXLUA_SERVER, wxLuaDebuggerwxSocketServer::OnServerEvent) + EVT_SOCKET(ID_WXLUA_SOCKET, wxLuaDebuggerwxSocketServer::OnSocketEvent) + END_EVENT_TABLE() + + + wxLuaDebuggerwxSocketServer::wxLuaDebuggerwxSocketServer(int portNumber) + : m_serverSocket(NULL), m_acceptedSocket(NULL), m_portNumber(portNumber) + { + StartServer(); + } + + wxLuaDebuggerwxSocketServer::~wxLuaDebuggerwxSocketServer() + { + StopServer(); + } + + // Start Debugging Service + bool wxLuaDebuggerwxSocketServer::StartServer() + { + if (!m_serverSocket) + { + // Create the address - defaults to localhost:0 initially + wxIPV4address addr; + addr.Service(m_portNumber); + + // Create the server socket + m_serverSocket = new wxSocketServer(addr, wxSOCKET_NOWAIT|wxSOCKET_BLOCK); + m_serverSocket->SetEventHandler(*this, ID_WXLUA_SERVER); + m_serverSocket->SetNotify(wxSOCKET_CONNECTION_FLAG); + m_serverSocket->SetFlags(wxSOCKET_BLOCK); + m_serverSocket->Notify(true); + } + + return m_serverSocket->Ok(); + } + + bool wxLuaDebuggerwxSocketServer::StopServer() + { + if (m_acceptedSocket) + { + m_acceptedSocket->GetSocket()->Notify(false); + m_acceptedSocket->Destroy(); + m_acceptedSocket = NULL; + } + + if (m_serverSocket) + { + m_serverSocket->Notify(false); + m_serverSocket->Destroy(); + m_serverSocket = NULL; + } + + return true; + } + + bool wxLuaDebuggerwxSocketServer::StartClient() + { + if (m_debuggeeProcess == NULL) + { + m_debuggeeProcess = new wxProcess(this, ID_WXLUASOCKET_DEBUGGEE_PROCESS); + wxString command = wxString::Format(wxT("%s -d%s:%u"), + GetProgramName().c_str(), + GetNetworkName().c_str(), + m_portNumber); + + m_debuggeeProcessID = wxExecute(command, wxEXEC_ASYNC, m_debuggeeProcess); + + return (m_debuggeeProcessID > 0); + } + return false; + } + + void wxLuaDebuggerwxSocketServer::OnServerEvent(wxSocketEvent& event) + { + switch(event.GetSocketEvent()) + { + case wxSOCKET_CONNECTION: + { + wxSocketBase *sock = m_serverSocket->Accept(false); + if (!sock) + { + // Error + return; + } + + sock->SetFlags(wxSOCKET_NOWAIT); + m_acceptedSocket = new wxLuaDebugSocket(sock); + m_acceptedSocket->m_name = wxString::Format(wxT("wxLuaDebuggerwxSocketServer::m_acceptedSocket (%ld)"), (long)wxGetProcessId()); + + // Setup Handler + sock->SetEventHandler(*this, ID_WXLUA_SOCKET); + sock->SetNotify(wxSOCKET_INPUT_FLAG | wxSOCKET_LOST_FLAG); + sock->Notify(true); + + wxMilliSleep(500); + + // Notify that a client has connected and we are ready to debug + wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_CLIENT_CONNECTED, this); + AddPendingEvent(debugEvent); + + break; + } + + default: + // Error + break; + } + } + + // Handle Commands from debugger (and lost connections) + void wxLuaDebuggerwxSocketServer::OnSocketEvent(wxSocketEvent& event) + { + wxSocketBase *sock = event.GetSocket(); + + wxPrintf(wxT("OnSocketEvent\n")); + + // Now we process the event + switch(event.GetSocketEvent()) + { + case wxSOCKET_INPUT: + { + // We disable input events, so that the test doesn't trigger + // wxSocketEvent again. + sock->SetNotify(wxSOCKET_LOST_FLAG); + + unsigned char debugEvent = 0; // wxLuaSocketDebuggeeEvents_Type + if (m_acceptedSocket->ReadCmd(debugEvent)) + HandleDebuggeeEvent(debugEvent); + + // Enable input events again. + sock->SetNotify(wxSOCKET_LOST_FLAG | wxSOCKET_INPUT_FLAG); + break; + } + case wxSOCKET_LOST: + { + m_acceptedSocket->Destroy(); + delete m_acceptedSocket; + m_acceptedSocket = NULL; + break; + } + default: + // Error + break; + } + } + + #endif // WXLUASOCKET_USE_C_SOCKET Index: wxlsock.cpp =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxluasocket/src/wxlsock.cpp,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -d -r1.17 -r1.18 *** wxlsock.cpp 2 Oct 2006 21:19:24 -0000 1.17 --- wxlsock.cpp 4 Oct 2006 05:55:02 -0000 1.18 *************** *** 32,37 **** // A simple way to debug the sockets to see if things are right ! // prints to the console (in linux at least) the socket cmd/event and the ! // socket read/write //#define DEBUG_WXLUASOCKET --- 32,37 ---- // A simple way to debug the sockets to see if things are right ! // prints to the console for unix and to a file (see below) for MSW the socket ! // cmd/event and the socket read/write //#define DEBUG_WXLUASOCKET *************** *** 88,96 **** void wxLuaSocketDebugMsg(const wxString& title, const wxString& msg) { ! //wxSafeShowMessage(title, wxString::Format(wxT("PID %ld TIME %s "), (long)wxGetProcessId(), wxT(__TIME__)) + msg); wxLuaCharBuffer buf(title+ wxString::Format(wxT(" PID %ld TIME %s "), (long)wxGetProcessId(), wxT(__TIME__)) + msg + wxT("\n")); FILE* h = fopen("wxLua_socketdebug.log", "a"); fprintf(h, buf.GetData()); fclose(h); } #else --- 88,99 ---- void wxLuaSocketDebugMsg(const wxString& title, const wxString& msg) { ! #ifdef __WXMSW__ // no console in MSW wxLuaCharBuffer buf(title+ wxString::Format(wxT(" PID %ld TIME %s "), (long)wxGetProcessId(), wxT(__TIME__)) + msg + wxT("\n")); FILE* h = fopen("wxLua_socketdebug.log", "a"); fprintf(h, buf.GetData()); fclose(h); + #else + wxSafeShowMessage(title, wxString::Format(wxT("PID %ld TIME %s "), (long)wxGetProcessId(), wxT(__TIME__)) + msg); + #endif } #else |
From: John L. <jr...@us...> - 2006-10-04 05:55:09
|
Update of /cvsroot/wxlua/wxLua/modules/wxluadebug/src In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv10846/wxLua/modules/wxluadebug/src Modified Files: staktree.cpp Log Message: add wxSocket implementation for wxLuaSockets... ifdefed off since it seems very slow and doesn't always connect Index: staktree.cpp =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxluadebug/src/staktree.cpp,v retrieving revision 1.31 retrieving revision 1.32 diff -C2 -d -r1.31 -r1.32 *** staktree.cpp 3 Oct 2006 19:52:16 -0000 1.31 --- staktree.cpp 4 Oct 2006 05:55:02 -0000 1.32 *************** *** 160,163 **** --- 160,164 ---- { wxCHECK_RET(m_wxlState.Ok(), wxT("Invalid wxLuaState")); + wxBusyCursor wait; wxLuaDebugData debugData; debugData.EnumerateStack(m_wxlState); *************** *** 167,170 **** --- 168,172 ---- { wxCHECK_RET(m_wxlState.Ok(), wxT("Invalid wxLuaState")); + wxBusyCursor wait; wxLuaDebugData debugData; debugData.EnumerateStackEntry(m_wxlState, nEntry, m_luaReferences); *************** *** 174,177 **** --- 176,180 ---- { wxCHECK_RET(m_wxlState.Ok(), wxT("Invalid wxLuaState")); + wxBusyCursor wait; wxLuaDebugData debugData; debugData.EnumerateTable(m_wxlState, nRef, nEntry, m_luaReferences); *************** *** 181,184 **** --- 184,188 ---- { wxCHECK_RET(m_wxlState.Ok(), wxT("Invalid wxLuaState")); + wxBusyCursor wait; wxLuaDebugData debugData; debugData.EnumerateTable(m_wxlState, -1, -1, m_luaReferences); // Get global table |
From: John L. <jr...@us...> - 2006-10-04 05:55:09
|
Update of /cvsroot/wxlua/wxLua/samples In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv10846/wxLua/samples Modified Files: editor.wx.lua Log Message: add wxSocket implementation for wxLuaSockets... ifdefed off since it seems very slow and doesn't always connect Index: editor.wx.lua =================================================================== RCS file: /cvsroot/wxlua/wxLua/samples/editor.wx.lua,v retrieving revision 1.29 retrieving revision 1.30 diff -C2 -d -r1.29 -r1.30 *** editor.wx.lua 3 Oct 2006 05:12:46 -0000 1.29 --- editor.wx.lua 4 Oct 2006 05:55:03 -0000 1.30 *************** *** 1556,1563 **** local editorText = editor:GetText() local filePath = MakeDebugFileName(editor, document.filePath) ! debugServer:Run(filePath, editorText) DownloadBreakpoints(editor, filePath) end ! ok = debugServer:Step() fIsConnected = ok fIsRunning = ok --- 1556,1565 ---- local editorText = editor:GetText() local filePath = MakeDebugFileName(editor, document.filePath) ! ok = debugServer:Run(filePath, editorText) DownloadBreakpoints(editor, filePath) end ! if ok then ! ok = debugServer:Step() ! end fIsConnected = ok fIsRunning = ok |
From: John L. <jr...@us...> - 2006-10-04 05:55:07
|
Update of /cvsroot/wxlua/wxLua/apps/wxlua/src In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv10846/wxLua/apps/wxlua/src Modified Files: wxlua.cpp Log Message: add wxSocket implementation for wxLuaSockets... ifdefed off since it seems very slow and doesn't always connect Index: wxlua.cpp =================================================================== RCS file: /cvsroot/wxlua/wxLua/apps/wxlua/src/wxlua.cpp,v retrieving revision 1.37 retrieving revision 1.38 diff -C2 -d -r1.37 -r1.38 *** wxlua.cpp 3 Oct 2006 19:52:15 -0000 1.37 --- wxlua.cpp 4 Oct 2006 05:55:02 -0000 1.38 *************** *** 163,169 **** { argCount++; ! wxLuaConsole *pConsole = new wxLuaConsole(this, m_wxlState); ! if (pConsole != NULL) ! pConsole->Show(true); } --- 163,171 ---- { argCount++; ! if (!m_luaConsole) ! { ! wxLuaConsole *wxlConsole = new wxLuaConsole(this, m_wxlState); ! wxlConsole->Show(true); ! } } *************** *** 233,236 **** --- 235,244 ---- } + if (m_luaConsole) + { + m_luaConsole->Destroy(); + m_luaConsole = NULL; + } + if (m_fMemoryBitmapAdded) wxMemoryFSHandler::RemoveFile(wxT("wxLua")); |
From: John L. <jr...@us...> - 2006-10-04 02:53:54
|
Update of /cvsroot/wxlua/wxLua/modules/wxluadebug/include In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv9871/wxluadebug/include Modified Files: wxldebug.h Log Message: compilation fix for wx2.6, WX_DEFINE_SORTED_USER_EXPORTED_ARRAY Index: wxldebug.h =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxluadebug/include/wxldebug.h,v retrieving revision 1.24 retrieving revision 1.25 diff -C2 -d -r1.24 -r1.25 *** wxldebug.h 15 Sep 2006 00:10:55 -0000 1.24 --- wxldebug.h 30 Sep 2006 18:20:03 -0000 1.25 *************** *** 71,75 **** }; ! WX_DEFINE_SORTED_USER_EXPORTED_ARRAY(wxLuaDebugDataItem *, wxLuaDebugDataItemArray, WXDLLIMPEXP_WXLUADEBUG); // ---------------------------------------------------------------------------- --- 71,79 ---- }; ! #if defined(WXMAKINGDLL_WXLUADEBUG) || defined(WXUSINGDLL) ! WX_DEFINE_SORTED_USER_EXPORTED_ARRAY(wxLuaDebugDataItem *, wxLuaDebugDataItemArray, WXDLLIMPEXP_WXLUADEBUG); ! #else ! WX_DEFINE_SORTED_ARRAY(wxLuaDebugDataItem *, wxLuaDebugDataItemArray); ! #endif // ---------------------------------------------------------------------------- |
From: John L. <jr...@us...> - 2006-10-04 02:52:30
|
Update of /cvsroot/wxlua/wxLua/apps/wxlua/src In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv11829/wxLua/apps/wxlua/src Modified Files: editor.h Log Message: more cleanup, fix wrong #elif statement Index: editor.h =================================================================== RCS file: /cvsroot/wxlua/wxLua/apps/wxlua/src/editor.h,v retrieving revision 1.22 retrieving revision 1.23 diff -C2 -d -r1.22 -r1.23 *** editor.h 28 Sep 2006 22:26:01 -0000 1.22 --- editor.h 29 Sep 2006 22:22:05 -0000 1.23 *************** *** 9,14 **** extern const unsigned char wxLuaEditor[]; ! const size_t wxLuaEditor_len = 72926; ! const unsigned char wxLuaEditor[72927] = { 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 61, 45, 45, 45, 10, 45, 45, 32, 78, 97,109,101, 58, 32, 32, 32, 32, 32, 32, 32, 32, 69,100,105,116,111,114, 46,119,120, 46,108,117, 97, 10, --- 9,14 ---- extern const unsigned char wxLuaEditor[]; ! const size_t wxLuaEditor_len = 72857; ! const unsigned char wxLuaEditor[72858] = { 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 61, 45, 45, 45, 10, 45, 45, 32, 78, 97,109,101, 58, 32, 32, 32, 32, 32, 32, 32, 32, 69,100,105,116,111,114, 46,119,120, 46,108,117, 97, 10, *************** *** 1721,1725 **** 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32,116,104,101,110, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 82,101,115,101,116, 40, 41, 10, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,119,120, 46,119,120, 77,105,108,108,105, 83,108,101,101,112, 40, 53, 48, 48, 41, 32, 45, 45, 32, 97,108,108,111,119, 32, 99,108,105,101,110,116, 32,116,111, 32,101,120,105,116, 32, 99,108,101, 97,110,108,121, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 68,101,108,101,116,101, 40, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32, 61, 32,110,105,108, 10, --- 1721,1724 ---- |
From: John L. <jr...@us...> - 2006-10-04 02:52:13
|
Update of /cvsroot/wxlua/wxLua/samples In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv5969/wxLua/samples Modified Files: editor.wx.lua Log Message: make sockets work again in MSW Index: editor.wx.lua =================================================================== RCS file: /cvsroot/wxlua/wxLua/samples/editor.wx.lua,v retrieving revision 1.27 retrieving revision 1.28 diff -C2 -d -r1.27 -r1.28 *** editor.wx.lua 28 Sep 2006 22:26:06 -0000 1.27 --- editor.wx.lua 29 Sep 2006 20:47:15 -0000 1.28 *************** *** 1709,1713 **** if debugServer then debugServer:Reset() - wx.wxMilliSleep(500) -- allow client to exit cleanly debugServer:Delete() debugServer = nil --- 1709,1712 ---- |
From: John L. <jr...@us...> - 2006-10-04 02:49:23
|
Update of /cvsroot/wxlua/wxLua/bindings/wxluasocket In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv31238/wxLua/bindings/wxluasocket Modified Files: override.hpp wxluasocket.i Added Files: Makefile Log Message: --- NEW FILE: Makefile --- # # File: makefile.unx # Author: J Winwood # Created: 2002 # Updated: # Copyright: (c) 2002. J Winwood # # # Makefile for generating the bindings WXLUA_DIR = ../.. include $(WXLUA_DIR)/bindings/wxwidgets/wrappers.lst THEWRAPPERS=$(addprefix $(WXLUA_DIR)/bindings/wxwidgets/, $(WRAPPERS)) DEPFILES=$(WXLUA_DIR)/bindings/genwxbind.lua $(WXLUA_DIR)/bindings/wxluasocket/override.hpp # $(THEWRAPPERS) all: genwxbind genwxbind: $(DEPFILES) @(cd $(WXLUA_DIR)/bindings && ../bin/lua -e"rulesFilename=\"wxluasocket/wxluasocket_rules.lua\"" genwxbind.lua > wxluasocket/error.txt) # do nothing to clean clean: Index: wxluasocket.i =================================================================== RCS file: /cvsroot/wxlua/wxLua/bindings/wxluasocket/wxluasocket.i,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** wxluasocket.i 15 Sep 2006 00:10:55 -0000 1.4 --- wxluasocket.i 28 Sep 2006 22:26:02 -0000 1.5 *************** *** 19,25 **** %include "wxluasocket/include/wxldserv.h" ! %class %delete %noclassinfo wxLuaDebuggerServer wxLuaDebuggerServer(int portNumber) - %constructor wxLuaDebuggerServerCompile(const wxString &buffer, const wxString &fileName) bool StartClient() --- 19,24 ---- %include "wxluasocket/include/wxldserv.h" ! %class %delete wxLuaDebuggerServer, wxEvtHandler wxLuaDebuggerServer(int portNumber) bool StartClient() Index: override.hpp =================================================================== RCS file: /cvsroot/wxlua/wxLua/bindings/wxluasocket/override.hpp,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** override.hpp 15 Sep 2006 00:10:55 -0000 1.3 --- override.hpp 28 Sep 2006 22:26:02 -0000 1.4 *************** *** 1,18 **** - %override wxLua_wxLuaDebuggerServerCompile_constructor - // %constructor wxLua_wxLuaDebuggerServerCompile_constructor(const wxString &buffer, const wxString &fileName) - static int LUACALL wxLua_wxLuaDebuggerServerCompile_constructor(lua_State *L) - { - wxLuaState wxlState(L); - // const wxString &fileName - wxString fileName = lua2wx(wxlState.GetStringType(2)); - // const wxString &buffer - wxString buffer = lua2wx(wxlState.GetStringType(1)); - // compile the file - wxLuaDebuggerBase debuggerBase; - bool fResult = debuggerBase.Compile(buffer, fileName); - // push result - lua_pushboolean(L, fResult); - // return the number of parameters - return 1; - } - %end --- 0 ---- |
Update of /cvsroot/wxlua/wxLua/modules/wxluasocket/src In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv31238/wxLua/modules/wxluasocket/src Modified Files: dservice.cpp wxldserv.cpp wxldtarg.cpp wxlhandl.cpp wxlsock.cpp wxluasocket.cpp wxluasocket_bind.cpp Log Message: Index: dservice.cpp =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxluasocket/src/dservice.cpp,v retrieving revision 1.22 retrieving revision 1.23 diff -C2 -d -r1.22 -r1.23 *** dservice.cpp 15 Sep 2006 00:10:56 -0000 1.22 --- dservice.cpp 28 Sep 2006 22:26:06 -0000 1.23 *************** *** 34,38 **** #include "wxluasocket/include/dservice.h" - #include "wxluasocket/include/wxlhandl.h" #include "wx/listimpl.cpp" --- 34,37 ---- *************** *** 227,231 **** { unsigned char debugCommand = 0; // wxLuaSocketDebuggerCommands_Type ! if (!debugSocket->ReadByte(debugCommand)) break; --- 226,230 ---- { unsigned char debugCommand = 0; // wxLuaSocketDebuggerCommands_Type ! if (!debugSocket->ReadCmd(debugCommand)) break; *************** *** 393,398 **** debuggee->Continue(); ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_STOPDEBUGGER); ! wxLuaHandler::GetHandler().ProcessEvent(debugEvent); } --- 392,397 ---- debuggee->Continue(); ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_STOPDEBUGGER, this); ! ProcessEvent(debugEvent); } *************** *** 455,462 **** if (!IsDebugger()) { ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_STARTDEBUGGER); // started debug process ! if (!wxLuaHandler::GetHandler().ProcessEvent(debugEvent)) return false; --- 454,461 ---- if (!IsDebugger()) { ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_STARTDEBUGGER, this); // started debug process ! if (!ProcessEvent(debugEvent)) return false; *************** *** 474,478 **** { wxLuaDebugSocket* dSocket = m_debuggerSocketList[i]; ! dSocket->WriteByte(wxLUASOCKET_DEBUGGEE_EVENT_BREAK); #if wxCHECK_VERSION(2,3,0) dSocket->WriteString(fileName.GetFullPath()); --- 473,477 ---- { wxLuaDebugSocket* dSocket = m_debuggerSocketList[i]; ! dSocket->WriteCmd(wxLUASOCKET_DEBUGGEE_EVENT_BREAK); #if wxCHECK_VERSION(2,3,0) dSocket->WriteString(fileName.GetFullPath()); *************** *** 500,504 **** { wxLuaDebugSocket* dSocket = m_debuggerSocketList[i]; ! dSocket->WriteByte(wxLUASOCKET_DEBUGGEE_EVENT_ERROR); dSocket->WriteString(errorMsg); --- 499,503 ---- { wxLuaDebugSocket* dSocket = m_debuggerSocketList[i]; ! dSocket->WriteCmd(wxLUASOCKET_DEBUGGEE_EVENT_ERROR); dSocket->WriteString(errorMsg); *************** *** 521,525 **** { wxLuaDebugSocket* dSocket = m_debuggerSocketList[i]; ! dSocket->WriteByte(wxLUASOCKET_DEBUGGEE_EVENT_ERROR); dSocket->WriteString(errorMsg); --- 520,524 ---- { wxLuaDebugSocket* dSocket = m_debuggerSocketList[i]; ! dSocket->WriteCmd(wxLUASOCKET_DEBUGGEE_EVENT_ERROR); dSocket->WriteString(errorMsg); *************** *** 542,546 **** { wxLuaDebugSocket* dSocket = m_debuggerSocketList[i]; ! dSocket->WriteByte(wxLUASOCKET_DEBUGGEE_EVENT_EXIT); if (!dSocket->Error()) --- 541,545 ---- { wxLuaDebugSocket* dSocket = m_debuggerSocketList[i]; ! dSocket->WriteCmd(wxLUASOCKET_DEBUGGEE_EVENT_EXIT); if (!dSocket->Error()) *************** *** 562,566 **** { wxLuaDebugSocket* dSocket = m_debuggerSocketList[i]; ! dSocket->WriteByte(wxLUASOCKET_DEBUGGEE_EVENT_STACK_ENUM); dSocket->WriteDebugData(debugData); --- 561,565 ---- { wxLuaDebugSocket* dSocket = m_debuggerSocketList[i]; ! dSocket->WriteCmd(wxLUASOCKET_DEBUGGEE_EVENT_STACK_ENUM); dSocket->WriteDebugData(debugData); *************** *** 583,587 **** { wxLuaDebugSocket* dSocket = m_debuggerSocketList[i]; ! dSocket->WriteByte(wxLUASOCKET_DEBUGGEE_EVENT_STACK_ENTRY_ENUM); dSocket->WriteInt32(entryRef); dSocket->WriteDebugData(debugData); --- 582,586 ---- { wxLuaDebugSocket* dSocket = m_debuggerSocketList[i]; ! dSocket->WriteCmd(wxLUASOCKET_DEBUGGEE_EVENT_STACK_ENTRY_ENUM); dSocket->WriteInt32(entryRef); dSocket->WriteDebugData(debugData); *************** *** 605,609 **** { wxLuaDebugSocket* dSocket = m_debuggerSocketList[i]; ! dSocket->WriteByte(wxLUASOCKET_DEBUGGEE_EVENT_TABLE_ENUM); dSocket->WriteLong(itemNode); dSocket->WriteDebugData(debugData); --- 604,608 ---- { wxLuaDebugSocket* dSocket = m_debuggerSocketList[i]; ! dSocket->WriteCmd(wxLUASOCKET_DEBUGGEE_EVENT_TABLE_ENUM); dSocket->WriteLong(itemNode); dSocket->WriteDebugData(debugData); *************** *** 627,631 **** { wxLuaDebugSocket* dSocket = m_debuggerSocketList[i]; ! dSocket->WriteByte(wxLUASOCKET_DEBUGGEE_EVENT_EVALUATE_EXPR); dSocket->WriteInt32(exprRef); dSocket->WriteString(strResult); --- 626,630 ---- { wxLuaDebugSocket* dSocket = m_debuggerSocketList[i]; ! dSocket->WriteCmd(wxLUASOCKET_DEBUGGEE_EVENT_EVALUATE_EXPR); dSocket->WriteInt32(exprRef); dSocket->WriteString(strResult); *************** *** 651,660 **** { wxLuaDebugSocket* dSocket = m_debuggerSocketList[i]; ! dSocket->WriteByte(wxLUASOCKET_DEBUGGEE_EVENT_BREAKPOINT_ADDED); ! #if wxCHECK_VERSION(2,3,0) dSocket->WriteString(breakPoint.GetFileName().GetFullPath()); - #else - dSocket->WriteString(breakPoint.GetFileName()); - #endif dSocket->WriteInt32(breakPoint.GetLine()); dSocket->WriteInt32((int)breakPoint.GetEnabled()); --- 650,655 ---- { wxLuaDebugSocket* dSocket = m_debuggerSocketList[i]; ! dSocket->WriteCmd(wxLUASOCKET_DEBUGGEE_EVENT_BREAKPOINT_ADDED); dSocket->WriteString(breakPoint.GetFileName().GetFullPath()); dSocket->WriteInt32(breakPoint.GetLine()); dSocket->WriteInt32((int)breakPoint.GetEnabled()); *************** *** 681,690 **** { wxLuaDebugSocket* dSocket = m_debuggerSocketList[i]; ! dSocket->WriteByte(wxLUASOCKET_DEBUGGEE_EVENT_BREAKPOINT_REMOVED); ! #if wxCHECK_VERSION(2,3,0) dSocket->WriteString(breakPoint.GetFileName().GetFullPath()); - #else - dSocket->WriteString(breakPoint.GetFileName()); - #endif dSocket->WriteInt32(breakPoint.GetLine()); dSocket->WriteInt32((int)breakPoint.GetEnabled()); --- 676,681 ---- { wxLuaDebugSocket* dSocket = m_debuggerSocketList[i]; ! dSocket->WriteCmd(wxLUASOCKET_DEBUGGEE_EVENT_BREAKPOINT_REMOVED); dSocket->WriteString(breakPoint.GetFileName().GetFullPath()); dSocket->WriteInt32(breakPoint.GetLine()); dSocket->WriteInt32((int)breakPoint.GetEnabled()); *************** *** 790,795 **** // Events from Debug Service unsigned char debuggeeEvent = 0; // wxLuaSocketDebuggeeEvents_Type ! if (m_debuggerSocket->ReadByte(debuggeeEvent)) ! HandleDebugEvent((wxLuaSocketDebuggeeEvents_Type) debuggeeEvent); // Enable input events again. --- 781,786 ---- // Events from Debug Service unsigned char debuggeeEvent = 0; // wxLuaSocketDebuggeeEvents_Type ! if (m_debuggerSocket->ReadCmd(debuggeeEvent)) ! HandleDebuggeeEvent((wxLuaSocketDebuggeeEvents_Type) debuggeeEvent); // Enable input events again. *************** *** 837,841 **** lua_setglobal(L, "print"); ! wxLuaHandler::GetHandler().EnterLuaCriticalSection(); } --- 828,832 ---- lua_setglobal(L, "print"); ! EnterLuaCriticalSection(); } *************** *** 855,859 **** } ! wxLuaHandler::GetHandler().LeaveLuaCriticalSection(); // Unhook --- 846,850 ---- } ! LeaveLuaCriticalSection(); // Unhook *************** *** 958,962 **** // release the critical section so // the other thread can access LUA ! wxLuaHandler::GetHandler().LeaveLuaCriticalSection(); // Wait for Debugger To Send Command --- 949,953 ---- // release the critical section so // the other thread can access LUA ! LeaveLuaCriticalSection(); // Wait for Debugger To Send Command *************** *** 975,979 **** // acquire the critical section again ! wxLuaHandler::GetHandler().EnterLuaCriticalSection(); } --- 966,970 ---- // acquire the critical section again ! EnterLuaCriticalSection(); } *************** *** 1024,1034 **** // Notify Debuggee ! #if wxCHECK_VERSION(2,3,0) ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_BREAKPOINT_ADDED, lineNumber, fileName.GetFullPath()); ! #else ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_BREAKPOINT_ADDED, lineNumber, fileName); ! #endif ! ! wxLuaHandler::GetHandler().AddPendingEvent(debugEvent); } } --- 1015,1020 ---- // Notify Debuggee ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_BREAKPOINT_ADDED, this, lineNumber, fileName.GetFullPath()); ! m_debugService->AddPendingEvent(debugEvent); } } *************** *** 1050,1059 **** // Notify Debuggee ! #if wxCHECK_VERSION(2,3,0) ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_BREAKPOINT_REMOVED, lineNumber, fileName.GetFullPath()); ! #else ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_BREAKPOINT_REMOVED, lineNumber, fileName); ! #endif ! wxLuaHandler::GetHandler().AddPendingEvent(debugEvent); delete breakPoint; --- 1036,1041 ---- // Notify Debuggee ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_BREAKPOINT_REMOVED, this, lineNumber, fileName.GetFullPath()); ! m_debugService->AddPendingEvent(debugEvent); delete breakPoint; *************** *** 1141,1147 **** wxLuaDebugData debugData; ! wxLuaHandler::GetHandler().EnterLuaCriticalSection(); debugData.EnumerateStack(m_wxlState); ! wxLuaHandler::GetHandler().LeaveLuaCriticalSection(); return m_debugService->NotifyStackEnumeration(debugData); --- 1123,1129 ---- wxLuaDebugData debugData; ! EnterLuaCriticalSection(); debugData.EnumerateStack(m_wxlState); ! LeaveLuaCriticalSection(); return m_debugService->NotifyStackEnumeration(debugData); *************** *** 1152,1158 **** wxLuaDebugData debugData; ! wxLuaHandler::GetHandler().EnterLuaCriticalSection(); debugData.EnumerateStackEntry(m_wxlState, stackRef, m_references); ! wxLuaHandler::GetHandler().LeaveLuaCriticalSection(); return m_debugService->NotifyStackEntryEnumeration(stackRef, debugData); --- 1134,1140 ---- wxLuaDebugData debugData; ! EnterLuaCriticalSection(); debugData.EnumerateStackEntry(m_wxlState, stackRef, m_references); ! LeaveLuaCriticalSection(); return m_debugService->NotifyStackEntryEnumeration(stackRef, debugData); *************** *** 1163,1169 **** wxLuaDebugData debugData; ! wxLuaHandler::GetHandler().EnterLuaCriticalSection(); debugData.EnumerateTable(m_wxlState, tableRef, nIndex, m_references); ! wxLuaHandler::GetHandler().LeaveLuaCriticalSection(); return m_debugService->NotifyTableEnumeration(nItemNode, debugData); --- 1145,1151 ---- wxLuaDebugData debugData; ! EnterLuaCriticalSection(); debugData.EnumerateTable(m_wxlState, tableRef, nIndex, m_references); ! LeaveLuaCriticalSection(); return m_debugService->NotifyTableEnumeration(nItemNode, debugData); *************** *** 1175,1179 **** int nReference = LUA_NOREF; ! wxLuaHandler::GetHandler().EnterLuaCriticalSection(); { lua_State* L = m_wxlState.GetLuaState(); --- 1157,1161 ---- int nReference = LUA_NOREF; ! EnterLuaCriticalSection(); { lua_State* L = m_wxlState.GetLuaState(); *************** *** 1325,1329 **** } } ! wxLuaHandler::GetHandler().LeaveLuaCriticalSection(); return m_debugService->NotifyEvaluateExpr(exprRef, strResult); --- 1307,1311 ---- } } ! LeaveLuaCriticalSection(); return m_debugService->NotifyEvaluateExpr(exprRef, strResult); Index: wxluasocket.cpp =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxluasocket/src/wxluasocket.cpp,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** wxluasocket.cpp 15 Sep 2006 00:10:56 -0000 1.5 --- wxluasocket.cpp 28 Sep 2006 22:26:06 -0000 1.6 *************** *** 44,65 **** } - // %override wxLua_wxLuaDebuggerServerCompile_constructor - // %constructor wxLua_wxLuaDebuggerServerCompile_constructor(const wxString &buffer, const wxString &fileName) - static int LUACALL wxLua_wxLuaDebuggerServerCompile_constructor(lua_State *L) - { - wxLuaState wxlState(L); - // const wxString &fileName - wxString fileName = lua2wx(wxlState.GetStringType(2)); - // const wxString &buffer - wxString buffer = lua2wx(wxlState.GetStringType(1)); - // compile the file - wxLuaDebuggerBase debuggerBase; - bool fResult = debuggerBase.Compile(buffer, fileName); - // push result - lua_pushboolean(L, fResult); - // return the number of parameters - return 1; - } - // bool StartClient() static int LUACALL wxLua_wxLuaDebuggerServer_StartClient(lua_State *L) --- 44,47 ---- *************** *** 319,323 **** static WXLUAMETHOD s_wxLuaDebuggerServer_methods[] = { { LuaConstructor, "wxLuaDebuggerServer", wxLua_wxLuaDebuggerServer_constructor, 1, 1, { &s_wxluaarg_Number, 0 } }, - { LuaConstructor, "wxLuaDebuggerServerCompile", wxLua_wxLuaDebuggerServerCompile_constructor, 2, 2, { &s_wxluaarg_String, &s_wxluaarg_String, 0 } }, { LuaMethod, "StartClient", wxLua_wxLuaDebuggerServer_StartClient, 0, 0, { 0 } }, { LuaMethod, "StartServerThread", wxLua_wxLuaDebuggerServer_StartServerThread, 0, 0, { 0 } }, --- 301,304 ---- Index: wxluasocket_bind.cpp =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxluasocket/src/wxluasocket_bind.cpp,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** wxluasocket_bind.cpp 15 Sep 2006 00:10:56 -0000 1.5 --- wxluasocket_bind.cpp 28 Sep 2006 22:26:06 -0000 1.6 *************** *** 128,132 **** { { "wxLuaDebuggerEvent", wxLuaDebuggerEvent_methods, wxLuaDebuggerEvent_methodCount, -1, CLASSINFO(wxLuaDebuggerEvent), &s_wxluatag_wxLuaDebuggerEvent, "wxEvent" }, ! { "wxLuaDebuggerServer", wxLuaDebuggerServer_methods, wxLuaDebuggerServer_methodCount, -1, NULL, &s_wxluatag_wxLuaDebuggerServer, NULL }, { 0, 0, 0, 0, 0, 0, 0 }, }; --- 128,132 ---- { { "wxLuaDebuggerEvent", wxLuaDebuggerEvent_methods, wxLuaDebuggerEvent_methodCount, -1, CLASSINFO(wxLuaDebuggerEvent), &s_wxluatag_wxLuaDebuggerEvent, "wxEvent" }, ! { "wxLuaDebuggerServer", wxLuaDebuggerServer_methods, wxLuaDebuggerServer_methodCount, -1, CLASSINFO(wxLuaDebuggerServer), &s_wxluatag_wxLuaDebuggerServer, "wxEvtHandler" }, { 0, 0, 0, 0, 0, 0, 0 }, }; Index: wxldserv.cpp =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxluasocket/src/wxldserv.cpp,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -d -r1.21 -r1.22 *** wxldserv.cpp 25 Sep 2006 22:24:46 -0000 1.21 --- wxldserv.cpp 28 Sep 2006 22:26:06 -0000 1.22 *************** *** 24,28 **** #include "wx/thread.h" #include "wxluasocket/include/wxldserv.h" - #include "wxluasocket/include/wxlhandl.h" #include "wxluadebug/include/staktree.h" --- 24,27 ---- *************** *** 63,79 **** } ! wxLuaDebuggerEvent::wxLuaDebuggerEvent(wxEventType eventType, int lineNumber, ! const wxString &file, bool enabledFlag) ! :wxEvent(0, eventType), ! m_lineNumber(lineNumber), ! m_fileName(file), ! m_fHasMessage(false), ! m_nReference(-1), ! m_fEnabledFlag(enabledFlag) ! { ! } ! ! wxLuaDebuggerEvent::~wxLuaDebuggerEvent() { } --- 62,77 ---- } ! wxLuaDebuggerEvent::wxLuaDebuggerEvent(wxEventType eventType, ! wxObject* eventObject, ! int lineNumber, ! const wxString &file, bool enabledFlag) ! :wxEvent(0, eventType), ! m_lineNumber(lineNumber), ! m_fileName(file), ! m_fHasMessage(false), ! m_nReference(-1), ! m_fEnabledFlag(enabledFlag) { + SetEventObject(eventObject); } *************** *** 95,101 **** wxLuaDebuggerServerInterface::wxLuaDebuggerServerInterface(wxLuaDebuggerServer* server) ! :wxLuaInterface(wxNullLuaState) { m_pServer = server; } --- 93,100 ---- wxLuaDebuggerServerInterface::wxLuaDebuggerServerInterface(wxLuaDebuggerServer* server) ! :wxLuaInterface(wxNullLuaState) { m_pServer = server; + wxCHECK_RET(m_pServer != NULL, wxT("Invalid wxLuaDebuggerServer in wxLuaDebuggerServerInterface")); } *************** *** 105,109 **** { m_pServer->CleanupDebugReferences(); - wxLuaHandler::GetHandler().SetStackDialog(NULL); } } --- 104,107 ---- *************** *** 138,141 **** --- 136,145 ---- IMPLEMENT_ABSTRACT_CLASS(wxLuaDebuggerBase, wxEvtHandler) + BEGIN_EVENT_TABLE(wxLuaDebuggerBase, wxEvtHandler) + EVT_WXLUA_DEBUGGER_STACK_ENUM( wxLuaDebuggerBase::OnDebugStackEnum) + EVT_WXLUA_DEBUGGER_STACK_ENTRY_ENUM(wxLuaDebuggerBase::OnDebugStackEntryEnum) + EVT_WXLUA_DEBUGGER_TABLE_ENUM( wxLuaDebuggerBase::OnDebugTableEnum) + END_EVENT_TABLE() + bool wxLuaDebuggerBase::AddBreakPoint(const wxString &fileName, int lineNumber) { *************** *** 145,149 **** { if (GetSocketBase()->IsConnected() && ! GetSocketBase()->WriteByte(wxLUASOCKET_DEBUGGER_CMD_ADD_BREAKPOINT) && GetSocketBase()->WriteString(fileName) && GetSocketBase()->WriteInt32(lineNumber)) --- 149,153 ---- { if (GetSocketBase()->IsConnected() && ! GetSocketBase()->WriteCmd(wxLUASOCKET_DEBUGGER_CMD_ADD_BREAKPOINT) && GetSocketBase()->WriteString(fileName) && GetSocketBase()->WriteInt32(lineNumber)) *************** *** 166,170 **** { if (GetSocketBase()->IsConnected() && ! GetSocketBase()->WriteByte(wxLUASOCKET_DEBUGGER_CMD_REMOVE_BREAKPOINT) && GetSocketBase()->WriteString(fileName) && GetSocketBase()->WriteInt32(lineNumber)) --- 170,174 ---- { if (GetSocketBase()->IsConnected() && ! GetSocketBase()->WriteCmd(wxLUASOCKET_DEBUGGER_CMD_REMOVE_BREAKPOINT) && GetSocketBase()->WriteString(fileName) && GetSocketBase()->WriteInt32(lineNumber)) *************** *** 186,190 **** try { ! if (GetSocketBase()->WriteByte(wxLUASOCKET_DEBUGGER_CMD_DISABLE_BREAKPOINT) && GetSocketBase()->WriteString(fileName) && GetSocketBase()->WriteInt32(lineNumber)) --- 190,194 ---- try { ! if (GetSocketBase()->WriteCmd(wxLUASOCKET_DEBUGGER_CMD_DISABLE_BREAKPOINT) && GetSocketBase()->WriteString(fileName) && GetSocketBase()->WriteInt32(lineNumber)) *************** *** 206,210 **** try { ! if (GetSocketBase()->WriteByte(wxLUASOCKET_DEBUGGER_CMD_ENABLE_BREAKPOINT) && GetSocketBase()->WriteString(fileName) && GetSocketBase()->WriteInt32(lineNumber)) --- 210,214 ---- try { ! if (GetSocketBase()->WriteCmd(wxLUASOCKET_DEBUGGER_CMD_ENABLE_BREAKPOINT) && GetSocketBase()->WriteString(fileName) && GetSocketBase()->WriteInt32(lineNumber)) *************** *** 227,231 **** { if (GetSocketBase()->IsConnected() && ! GetSocketBase()->WriteByte(wxLUASOCKET_DEBUGGER_CMD_CLEAR_ALL_BREAKPOINTS)) { return true; --- 231,235 ---- { if (GetSocketBase()->IsConnected() && ! GetSocketBase()->WriteCmd(wxLUASOCKET_DEBUGGER_CMD_CLEAR_ALL_BREAKPOINTS)) { return true; *************** *** 245,249 **** try { ! if (GetSocketBase()->WriteByte(wxLUASOCKET_DEBUGGER_CMD_RUN_BUFFER) && GetSocketBase()->WriteString(fileName) && GetSocketBase()->WriteString(buffer)) --- 249,253 ---- try { ! if (GetSocketBase()->WriteCmd(wxLUASOCKET_DEBUGGER_CMD_RUN_BUFFER) && GetSocketBase()->WriteString(fileName) && GetSocketBase()->WriteString(buffer)) *************** *** 265,269 **** try { ! return GetSocketBase()->WriteByte(wxLUASOCKET_DEBUGGER_CMD_DEBUG_STEP); } catch(wxLuaSocketException &) --- 269,273 ---- try { ! return GetSocketBase()->WriteCmd(wxLUASOCKET_DEBUGGER_CMD_DEBUG_STEP); } catch(wxLuaSocketException &) *************** *** 280,284 **** try { ! return GetSocketBase()->WriteByte(wxLUASOCKET_DEBUGGER_CMD_DEBUG_STEPOVER); } catch(wxLuaSocketException &) --- 284,288 ---- try { ! return GetSocketBase()->WriteCmd(wxLUASOCKET_DEBUGGER_CMD_DEBUG_STEPOVER); } catch(wxLuaSocketException &) *************** *** 295,299 **** try { ! return GetSocketBase()->WriteByte(wxLUASOCKET_DEBUGGER_CMD_DEBUG_STEPOUT); } catch(wxLuaSocketException &) --- 299,303 ---- try { ! return GetSocketBase()->WriteCmd(wxLUASOCKET_DEBUGGER_CMD_DEBUG_STEPOUT); } catch(wxLuaSocketException &) *************** *** 310,314 **** try { ! return GetSocketBase()->WriteByte(wxLUASOCKET_DEBUGGER_CMD_DEBUG_CONTINUE); } catch(wxLuaSocketException &) --- 314,318 ---- try { ! return GetSocketBase()->WriteCmd(wxLUASOCKET_DEBUGGER_CMD_DEBUG_CONTINUE); } catch(wxLuaSocketException &) *************** *** 325,329 **** try { ! return GetSocketBase()->WriteByte(wxLUASOCKET_DEBUGGER_CMD_DEBUG_BREAK); } catch(wxLuaSocketException &) --- 329,333 ---- try { ! return GetSocketBase()->WriteCmd(wxLUASOCKET_DEBUGGER_CMD_DEBUG_BREAK); } catch(wxLuaSocketException &) *************** *** 340,344 **** try { ! return GetSocketBase()->WriteByte(wxLUASOCKET_DEBUGGER_CMD_RESET); } catch(wxLuaSocketException &) --- 344,348 ---- try { ! return GetSocketBase()->WriteCmd(wxLUASOCKET_DEBUGGER_CMD_RESET); } catch(wxLuaSocketException &) *************** *** 355,359 **** try { ! return GetSocketBase()->WriteByte(wxLUASOCKET_DEBUGGER_CMD_ENUMERATE_STACK); } catch(wxLuaSocketException &) --- 359,363 ---- try { ! return GetSocketBase()->WriteCmd(wxLUASOCKET_DEBUGGER_CMD_ENUMERATE_STACK); } catch(wxLuaSocketException &) *************** *** 370,374 **** try { ! if (GetSocketBase()->WriteByte(wxLUASOCKET_DEBUGGER_CMD_ENUMERATE_STACK_ENTRY) && GetSocketBase()->WriteInt32(stackEntry)) { --- 374,378 ---- try { ! if (GetSocketBase()->WriteCmd(wxLUASOCKET_DEBUGGER_CMD_ENUMERATE_STACK_ENTRY) && GetSocketBase()->WriteInt32(stackEntry)) { *************** *** 389,393 **** try { ! if (GetSocketBase()->WriteByte(wxLUASOCKET_DEBUGGER_CMD_ENUMERATE_TABLE_REF) && GetSocketBase()->WriteInt32(tableRef) && GetSocketBase()->WriteInt32(nIndex) && --- 393,397 ---- try { ! if (GetSocketBase()->WriteCmd(wxLUASOCKET_DEBUGGER_CMD_ENUMERATE_TABLE_REF) && GetSocketBase()->WriteInt32(tableRef) && GetSocketBase()->WriteInt32(nIndex) && *************** *** 410,414 **** try { ! if (GetSocketBase()->WriteByte(wxLUASOCKET_DEBUGGER_CMD_CLEAR_DEBUG_REFERENCES)) { return true; --- 414,418 ---- try { ! if (GetSocketBase()->WriteCmd(wxLUASOCKET_DEBUGGER_CMD_CLEAR_DEBUG_REFERENCES)) { return true; *************** *** 428,432 **** try { ! if (GetSocketBase()->WriteByte(wxLUASOCKET_DEBUGGER_CMD_EVALUATE_EXPR) && GetSocketBase()->WriteInt32(exprRef) && GetSocketBase()->WriteString(strExpression)) --- 432,436 ---- try { ! if (GetSocketBase()->WriteCmd(wxLUASOCKET_DEBUGGER_CMD_EVALUATE_EXPR) && GetSocketBase()->WriteInt32(exprRef) && GetSocketBase()->WriteString(strExpression)) *************** *** 444,507 **** bool wxLuaDebuggerBase::Compile(const wxString &fileName, const wxString &buffer) { ! bool fErrorsSeen = false; ! lua_State *L = lua_open(); ! ! // load some useful libraries, loads all of them ! luaL_openlibs(L); ! ! wxLuaCharBuffer charbuf(buffer); ! int status = luaL_loadbuffer(L, charbuf.GetData(), ! charbuf.Length(), ! wx2lua(fileName)); ! switch (status) ! { ! case LUA_ERRRUN: ! NotifyError(_("Error while compiling chunk\n")); ! fErrorsSeen = true; ! break; ! case LUA_ERRSYNTAX: ! { ! wxString strError(_("Syntax error during pre-compilation: ")); ! strError += lua2wx(lua_tostring(L, -1)); ! strError += wxT("\n"); ! NotifyError(strError); ! } ! fErrorsSeen = true; ! break; ! case LUA_ERRMEM: ! NotifyError(_("Memory allocation error\n")); ! fErrorsSeen = true; ! break; ! case LUA_ERRERR: ! NotifyError(_("Generic error or an error occurred while running the error handler\n")); ! fErrorsSeen = true; ! break; ! case LUA_ERRFILE: ! { ! wxString strError(_("Error occurred while opening file: ")); ! strError += lua2wx(lua_tostring(L, -1)); ! strError += wxT("\n"); ! NotifyError(strError); ! } ! fErrorsSeen = true; ! break; ! default: ! NotifyError(_("Compiled OK\n")); ! break; ! } ! lua_close(L); ! return !fErrorsSeen; ! } ! void wxLuaDebuggerBase::NotifyError(const wxString &msg) ! { ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_ERROR); ! debugEvent.SetMessage(msg); ! wxLuaHandler::GetHandler().AddPendingEvent(debugEvent); } ! int wxLuaDebuggerBase::HandleDebugEvent(wxLuaSocketDebuggeeEvents_Type event_type) { wxCHECK_MSG(GetSocketBase(), event_type, wxT("Invalid socket")); --- 448,467 ---- bool wxLuaDebuggerBase::Compile(const wxString &fileName, const wxString &buffer) { ! wxLuaState wxlState(true); // new clean state to compile in ! wxString errMsg; ! int line_num = -1; ! int ret = wxlState.CompileString(buffer, fileName, &errMsg, &line_num); ! if (errMsg.IsEmpty()) ! errMsg = _T("Compiled ok.\n"); ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_ERROR, this); ! debugEvent.SetMessage(errMsg); ! AddPendingEvent(debugEvent); ! return ret == -1; } ! int wxLuaDebuggerBase::HandleDebuggeeEvent(wxLuaSocketDebuggeeEvents_Type event_type) { wxCHECK_MSG(GetSocketBase(), event_type, wxT("Invalid socket")); *************** *** 517,522 **** GetSocketBase()->ReadInt32(lineNumber)) { ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_BREAK, lineNumber, fileName); ! wxLuaHandler::GetHandler().AddPendingEvent(debugEvent); } break; --- 477,482 ---- GetSocketBase()->ReadInt32(lineNumber)) { ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_BREAK, this, lineNumber, fileName); ! AddPendingEvent(debugEvent); } break; *************** *** 528,534 **** if (GetSocketBase()->ReadString(strMessage)) { ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_PRINT); debugEvent.SetMessage(strMessage); ! wxLuaHandler::GetHandler().AddPendingEvent(debugEvent); } break; --- 488,494 ---- if (GetSocketBase()->ReadString(strMessage)) { ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_PRINT, this); debugEvent.SetMessage(strMessage); ! AddPendingEvent(debugEvent); } break; *************** *** 540,546 **** if (GetSocketBase()->ReadString(strMessage)) { ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_ERROR); debugEvent.SetMessage(strMessage); ! wxLuaHandler::GetHandler().AddPendingEvent(debugEvent); } break; --- 500,506 ---- if (GetSocketBase()->ReadString(strMessage)) { ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_ERROR, this); debugEvent.SetMessage(strMessage); ! AddPendingEvent(debugEvent); } break; *************** *** 548,553 **** case wxLUASOCKET_DEBUGGEE_EVENT_EXIT: { ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_EXIT); ! wxLuaHandler::GetHandler().AddPendingEvent(debugEvent); break; } --- 508,513 ---- case wxLUASOCKET_DEBUGGEE_EVENT_EXIT: { ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_EXIT, this); ! AddPendingEvent(debugEvent); break; } *************** *** 558,564 **** if (GetSocketBase()->ReadDebugData(debugData)) { ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_STACK_ENUM); debugEvent.SetDebugData(-1, debugData); ! wxLuaHandler::GetHandler().AddPendingEvent(debugEvent); } break; --- 518,524 ---- if (GetSocketBase()->ReadDebugData(debugData)) { ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_STACK_ENUM, this); debugEvent.SetDebugData(-1, debugData); ! AddPendingEvent(debugEvent); } break; *************** *** 572,578 **** GetSocketBase()->ReadDebugData(debugData)) { ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_STACK_ENTRY_ENUM); debugEvent.SetDebugData(stackRef, debugData); ! wxLuaHandler::GetHandler().AddPendingEvent(debugEvent); } break; --- 532,538 ---- GetSocketBase()->ReadDebugData(debugData)) { ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_STACK_ENTRY_ENUM, this); debugEvent.SetDebugData(stackRef, debugData); ! AddPendingEvent(debugEvent); } break; *************** *** 586,592 **** GetSocketBase()->ReadDebugData(debugData)) { ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_TABLE_ENUM); debugEvent.SetDebugData(itemNode, debugData); ! wxLuaHandler::GetHandler().AddPendingEvent(debugEvent); } break; --- 546,552 ---- GetSocketBase()->ReadDebugData(debugData)) { ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_TABLE_ENUM, this); debugEvent.SetDebugData(itemNode, debugData); ! AddPendingEvent(debugEvent); } break; *************** *** 600,607 **** GetSocketBase()->ReadString(strResult)) { ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_EVALUATE_EXPR); debugEvent.SetMessage(strResult); debugEvent.SetDebugData(exprRef); ! wxLuaHandler::GetHandler().AddPendingEvent(debugEvent); } break; --- 560,567 ---- GetSocketBase()->ReadString(strResult)) { ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_EVALUATE_EXPR, this); debugEvent.SetMessage(strResult); debugEvent.SetDebugData(exprRef); ! AddPendingEvent(debugEvent); } break; *************** *** 617,622 **** GetSocketBase()->ReadInt32(enabled)) { ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_BREAKPOINT_ADDED, line, fileName, enabled ? true : false); ! wxLuaHandler::GetHandler().AddPendingEvent(debugEvent); } break; --- 577,582 ---- GetSocketBase()->ReadInt32(enabled)) { ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_BREAKPOINT_ADDED, this, line, fileName, enabled ? true : false); ! AddPendingEvent(debugEvent); } break; *************** *** 630,635 **** GetSocketBase()->ReadInt32(line)) { ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_BREAKPOINT_REMOVED, line, fileName); ! wxLuaHandler::GetHandler().AddPendingEvent(debugEvent); } break; --- 590,595 ---- GetSocketBase()->ReadInt32(line)) { ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_BREAKPOINT_REMOVED, this, line, fileName); ! AddPendingEvent(debugEvent); } break; *************** *** 641,644 **** --- 601,626 ---- } + void wxLuaDebuggerBase::OnDebugStackEnum(wxLuaDebuggerEvent &event) + { + if (GetStackDialog() != NULL) + GetStackDialog()->FillStackCombobox(event.GetDebugData()); + else + event.Skip(); + } + void wxLuaDebuggerBase::OnDebugStackEntryEnum(wxLuaDebuggerEvent &event) + { + if (GetStackDialog() != NULL) + GetStackDialog()->FillStackEntry(event.GetReference(), event.GetDebugData()); + else + event.Skip(); + } + void wxLuaDebuggerBase::OnDebugTableEnum(wxLuaDebuggerEvent &event) + { + if (GetStackDialog() != NULL) + GetStackDialog()->FillTableEntry(wxTreeItemId((wxTreeItemIdValue)event.GetReference()), event.GetDebugData()); + else + event.Skip(); + } + // ---------------------------------------------------------------------------- // wxLuaDebuggerServer::LuaThread *************** *** 666,670 **** m_pProcess(NULL), m_pThread(NULL), - m_pStackDialog(NULL), m_fShutdown(false) { --- 648,651 ---- *************** *** 686,690 **** catch(wxLuaSocketException & e) { ! NotifyError(wxString::Format(_("Error while opening listening socket. %s"), e.description().c_str())); m_fShutdown = true; } --- 667,674 ---- catch(wxLuaSocketException & e) { ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_ERROR, this); ! debugEvent.SetMessage(wxString::Format(_("Error while opening listening socket. %s"), e.description().c_str())); ! AddPendingEvent(debugEvent); ! m_fShutdown = true; } *************** *** 740,744 **** catch(wxLuaSocketException & /*e*/) { ! NotifyError(_("Error while shutting down session socket")); } --- 724,730 ---- catch(wxLuaSocketException & /*e*/) { ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_ERROR, this); ! debugEvent.SetMessage(_("Error while shutting down session socket")); ! AddPendingEvent(debugEvent); } *************** *** 780,784 **** catch(wxLuaSocketException & /*e*/) { ! NotifyError(_("Error while shutting down server socket")); } } --- 766,772 ---- catch(wxLuaSocketException & /*e*/) { ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_ERROR, this); ! debugEvent.SetMessage(_("Error while shutting down server socket")); ! AddPendingEvent(debugEvent); } } *************** *** 823,828 **** { // Notify that a client has connected and we are ready to debug ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_CLIENT_CONNECTED); ! wxLuaHandler::GetHandler().AddPendingEvent(debugEvent); // Enter the debug loop --- 811,816 ---- { // Notify that a client has connected and we are ready to debug ! wxLuaDebuggerEvent debugEvent(wxEVT_WXLUA_DEBUGGER_CLIENT_CONNECTED, this); ! AddPendingEvent(debugEvent); // Enter the debug loop *************** *** 830,839 **** { unsigned char debugEvent = 0; // wxLuaSocketDebuggeeEvents_Type ! if (m_acceptedSocket->ReadByte(debugEvent)) { if (debugEvent == wxLUASOCKET_DEBUGGEE_EVENT_EXIT) m_fShutdown = true; ! HandleDebugEvent((wxLuaSocketDebuggeeEvents_Type) debugEvent); } //else --- 818,827 ---- { unsigned char debugEvent = 0; // wxLuaSocketDebuggeeEvents_Type ! if (m_acceptedSocket->ReadCmd(debugEvent)) { if (debugEvent == wxLUASOCKET_DEBUGGEE_EVENT_EXIT) m_fShutdown = true; ! HandleDebuggeeEvent((wxLuaSocketDebuggeeEvents_Type) debugEvent); } //else *************** *** 862,880 **** bool wxLuaDebuggerServer::DisplayStackDialog(wxWindow *pParent) { ! if (m_pStackDialog == NULL) { wxLuaDebuggerServerInterface* li = new wxLuaDebuggerServerInterface(this); ! m_pStackDialog = new wxLuaStackDialog(); ! wxLuaHandler::GetHandler().SetStackDialog(m_pStackDialog); ! ! m_pStackDialog->Create(pParent, _("wxLua Stack frame"), ! wxDefaultPosition, wxSize(500, 250), ! li); ! m_pStackDialog->ShowModal(); ! m_pStackDialog->Destroy(); ! wxLuaHandler::GetHandler().SetStackDialog(NULL); ! m_pStackDialog = NULL; return true; } --- 850,865 ---- bool wxLuaDebuggerServer::DisplayStackDialog(wxWindow *pParent) { ! if (m_stackDialog == NULL) { wxLuaDebuggerServerInterface* li = new wxLuaDebuggerServerInterface(this); ! m_stackDialog = new wxLuaStackDialog(); ! m_stackDialog->Create(pParent, _("wxLua Stack frame"), ! wxDefaultPosition, wxSize(500, 250), ! li); ! m_stackDialog->ShowModal(); ! m_stackDialog->Destroy(); ! m_stackDialog = NULL; return true; } Index: wxlsock.cpp =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxluasocket/src/wxlsock.cpp,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** wxlsock.cpp 25 Sep 2006 22:24:46 -0000 1.14 --- wxlsock.cpp 28 Sep 2006 22:26:06 -0000 1.15 *************** *** 98,110 **** // ---------------------------------------------------------------------------- ! bool wxLuaSocketBase::ReadByte(unsigned char& value_) { unsigned char value = 0; bool ok = Read((char *) &value, sizeof(unsigned char)) == sizeof(unsigned char); ! wxLuaSocketDebugMsg(m_name + wxT(" wxLuaSocketBase::ReadByte"), wxString::Format(wxT("ok %d val %d "), (int)ok, (int)value) + wxLuaSocketCmdEventMsg(value)); if (ok) value_ = value; return ok; } - bool wxLuaSocketBase::ReadInt32(wxInt32& value_) { --- 98,109 ---- // ---------------------------------------------------------------------------- ! bool wxLuaSocketBase::ReadCmd(unsigned char& value_) { unsigned char value = 0; bool ok = Read((char *) &value, sizeof(unsigned char)) == sizeof(unsigned char); ! wxLuaSocketDebugMsg(m_name + wxT(" wxLuaSocketBase::ReadCmd"), wxString::Format(wxT("ok %d val %d "), (int)ok, (int)value) + wxLuaSocketCmdEventMsg(value)); if (ok) value_ = value; return ok; } bool wxLuaSocketBase::ReadInt32(wxInt32& value_) { *************** *** 115,128 **** return ok; } - - bool wxLuaSocketBase::ReadUInt32(wxUint32& value_) - { - wxUint32 value = 0; - bool ok = Read((char *) &value, sizeof(wxUint32)) == sizeof(wxUint32); - wxLuaSocketDebugMsg(m_name + wxT(" wxLuaSocketBase::ReadUInt32"), wxString::Format(wxT("ok %d val %u"), (int)ok, value)); - if (ok) value_ = value; - return value; - } - bool wxLuaSocketBase::ReadLong(long& value_) { --- 114,117 ---- *************** *** 136,140 **** return ok; } - bool wxLuaSocketBase::ReadString(wxString& value_) { --- 125,128 ---- *************** *** 149,153 **** ok = Read(buffer, length) == (int)length; buffer[length] = 0; ! value = lua2wx(buffer); delete[] buffer; } --- 137,141 ---- ok = Read(buffer, length) == (int)length; buffer[length] = 0; ! if (ok) value = lua2wx(buffer); delete[] buffer; } *************** *** 158,162 **** return ok; } - bool wxLuaSocketBase::ReadDebugData(wxLuaDebugData& value) { --- 146,149 ---- *************** *** 219,236 **** } ! bool wxLuaSocketBase::WriteByte(char value) { ! wxLuaSocketDebugMsg(m_name + wxT(" wxLuaSocketBase::WriteByte"), wxString::Format(wxT("val %d "), (int)value) + wxLuaSocketCmdEventMsg(value)); ! return Write((const char*)&value, sizeof(char)); } bool wxLuaSocketBase::WriteInt32(wxInt32 value) { wxLuaSocketDebugMsg(m_name + wxT(" wxLuaSocketBase::WriteInt32"), wxString::Format(wxT("val %d"), value)); ! return Write((const char*)&value, sizeof(wxInt32)); ! } ! bool wxLuaSocketBase::WriteUInt32(wxUint32 value) ! { ! wxLuaSocketDebugMsg(m_name + wxT(" wxLuaSocketBase::WriteUInt32"), wxString::Format(wxT("val %u"), value)); ! return Write((const char*)&value, sizeof(wxUint32)); } bool wxLuaSocketBase::WriteLong(long value) --- 206,218 ---- } ! bool wxLuaSocketBase::WriteCmd(char value) { ! wxLuaSocketDebugMsg(m_name + wxT(" wxLuaSocketBase::WriteCmd"), wxString::Format(wxT("val %d "), (int)value) + wxLuaSocketCmdEventMsg(value)); ! return Write((const char*)&value, sizeof(char)) == sizeof(char); } bool wxLuaSocketBase::WriteInt32(wxInt32 value) { wxLuaSocketDebugMsg(m_name + wxT(" wxLuaSocketBase::WriteInt32"), wxString::Format(wxT("val %d"), value)); ! return Write((const char*)&value, sizeof(wxInt32)) == sizeof(wxInt32); } bool wxLuaSocketBase::WriteLong(long value) *************** *** 240,246 **** char buf[65] = { 0 }; memset(buf, 0, 65); sprintf(buf, "%ld", value); ! return Write(buf, 64); } - bool wxLuaSocketBase::WriteString(const wxString &value) { --- 222,227 ---- char buf[65] = { 0 }; memset(buf, 0, 65); sprintf(buf, "%ld", value); ! return Write(buf, 64) == 64; } bool wxLuaSocketBase::WriteString(const wxString &value) { *************** *** 252,262 **** try { ! Write((const char*)&buflen, sizeof(wxUint32)); ! if (buflen > 0) { ! Write(buf.GetData(), buflen); } ! return true; } catch(wxLuaSocketException &) --- 233,243 ---- try { ! bool ok = Write((const char*)&buflen, sizeof(wxUint32)) == sizeof(wxUint32); ! if (ok && (buflen > 0)) { ! ok = Write(buf.GetData(), buflen) == (int)buflen; } ! return ok; } catch(wxLuaSocketException &) *************** *** 266,270 **** return false; } - bool wxLuaSocketBase::WriteDebugData(const wxLuaDebugData& debugData) { --- 247,250 ---- *************** *** 334,338 **** // ---------------------------------------------------------------------------- ! wxLuaSocket::wxLuaSocket() : m_sockstate(SOCKET_CLOSED) { } --- 314,318 ---- // ---------------------------------------------------------------------------- ! wxLuaSocket::wxLuaSocket() : m_sock(0), m_sockstate(SOCKET_CLOSED) { } *************** *** 434,438 **** wxString wxLuaSocket::GetAddress() const { ! if (m_sockstate != SOCKET_CONNECTED && m_sockstate != SOCKET_ACCEPTED) throw wxLuaSocketException(wxLuaSocketException::SOCKET_NOT_CONNECTED); --- 414,418 ---- wxString wxLuaSocket::GetAddress() const { ! if ((m_sockstate != SOCKET_CONNECTED) && (m_sockstate != SOCKET_ACCEPTED)) throw wxLuaSocketException(wxLuaSocketException::SOCKET_NOT_CONNECTED); *************** *** 442,446 **** int wxLuaSocket::GetPort() const { ! if (m_sockstate != SOCKET_CONNECTED && m_sockstate != SOCKET_ACCEPTED) throw wxLuaSocketException(wxLuaSocketException::SOCKET_NOT_CONNECTED); --- 422,426 ---- int wxLuaSocket::GetPort() const { ! if ((m_sockstate != SOCKET_CONNECTED) && (m_sockstate != SOCKET_ACCEPTED)) throw wxLuaSocketException(wxLuaSocketException::SOCKET_NOT_CONNECTED); *************** *** 448,453 **** } - - // Write data to an open socket, repeat until all data has been sent. int wxLuaSocket::Write(const char *buffer_, wxUint32 length_) --- 428,431 ---- *************** *** 506,519 **** } ! // Shutdown a socket in an orderly fashion ! void wxLuaSocket::Shutdown(int how) { if (m_sockstate != SOCKET_CLOSED) { ! ::shutdown(m_sock, how); } } ! void wxLuaSocket::Close() { if (m_sockstate != SOCKET_CLOSED) --- 484,498 ---- } ! bool wxLuaSocket::Shutdown(int how) { if (m_sockstate != SOCKET_CLOSED) { ! return ::shutdown(m_sock, how) == 0; } + + return false; } ! bool wxLuaSocket::Close() { if (m_sockstate != SOCKET_CLOSED) *************** *** 526,531 **** throw wxLuaSocketException(wxLuaSocketException::SOCKET_CLOSE_FAILED); #endif ! m_sockstate = SOCKET_CLOSED; } } --- 505,516 ---- throw wxLuaSocketException(wxLuaSocketException::SOCKET_CLOSE_FAILED); #endif ! else ! { ! m_sockstate = SOCKET_CLOSED; ! return true; ! } } + + return false; } Index: wxlhandl.cpp =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxluasocket/src/wxlhandl.cpp,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** wxlhandl.cpp 7 Sep 2006 04:20:54 -0000 1.5 --- wxlhandl.cpp 28 Sep 2006 22:26:06 -0000 1.6 *************** *** 26,43 **** #include "wxluasocket/include/wxlhandl.h" - // ---------------------------------------------------------------------------- - // wxLuaHandler - Allow for Custom Lua Handler (an alternative to wxLuaApp) - // ---------------------------------------------------------------------------- - - wxLuaHandler* wxLuaHandler::sm_luaHandler = NULL; - - wxLuaHandler::wxLuaHandler() : m_stackDialog(NULL) - { - wxASSERT_MSG(!sm_luaHandler, wxT("There can only be one wxLuaHandler!")); - sm_luaHandler = this; - } - - wxLuaHandler::~wxLuaHandler() - { - sm_luaHandler = NULL; - } --- 26,27 ---- Index: wxldtarg.cpp =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxluasocket/src/wxldtarg.cpp,v retrieving revision 1.23 retrieving revision 1.24 diff -C2 -d -r1.23 -r1.24 *** wxldtarg.cpp 25 Sep 2006 22:24:46 -0000 1.23 --- wxldtarg.cpp 28 Sep 2006 22:26:06 -0000 1.24 *************** *** 24,28 **** #include "wxluasocket/include/wxldtarg.h" #include "wxluasocket/include/wxldserv.h" - #include "wxluasocket/include/wxlhandl.h" #if !wxCHECK_VERSION(2, 6, 0) --- 24,27 ---- *************** *** 76,80 **** lua_setglobal(L, "print"); ! wxLuaHandler::GetHandler().EnterLuaCriticalSection(); } --- 75,79 ---- lua_setglobal(L, "print"); ! EnterLuaCriticalSection(); } *************** *** 84,88 **** delete m_pThread; ! wxLuaHandler::GetHandler().LeaveLuaCriticalSection(); } --- 83,87 ---- delete m_pThread; ! LeaveLuaCriticalSection(); } *************** *** 189,193 **** { unsigned char debugCommand = 0; // wxLuaSocketDebuggerCommands_Type ! if (!m_clientSocket.ReadByte(debugCommand)) { //wxMilliSleep(250); // FIXME slow down reading a bit and cross fingers --- 188,192 ---- { unsigned char debugCommand = 0; // wxLuaSocketDebuggerCommands_Type ! if (!m_clientSocket.ReadCmd(debugCommand)) { //wxMilliSleep(250); // FIXME slow down reading a bit and cross fingers *************** *** 195,340 **** } ! switch ((int)debugCommand) ! { ! case wxLUASOCKET_DEBUGGER_CMD_NONE : ! { ! // This is an error, but maybe we can continue? ! break; ! } ! case wxLUASOCKET_DEBUGGER_CMD_ADD_BREAKPOINT: ! { ! wxString fileName; ! wxInt32 lineNumber = 0; ! if (m_clientSocket.ReadString(fileName) && ! m_clientSocket.ReadInt32(lineNumber)) ! { ! AddBreakPoint(fileName, lineNumber); ! } ! break; ! } ! case wxLUASOCKET_DEBUGGER_CMD_REMOVE_BREAKPOINT: ! { ! wxString fileName; ! wxInt32 lineNumber = 0; ! if (m_clientSocket.ReadString(fileName) && ! m_clientSocket.ReadInt32(lineNumber)) ! { ! RemoveBreakPoint(fileName, lineNumber); ! } ! break; ! } ! case wxLUASOCKET_DEBUGGER_CMD_CLEAR_ALL_BREAKPOINTS: { ! ClearAllBreakPoints(); ! break; } ! case wxLUASOCKET_DEBUGGER_CMD_RUN_BUFFER: ! { ! wxString fileName; ! wxString buffer; ! if (m_clientSocket.ReadString(fileName) && ! m_clientSocket.ReadString(buffer)) ! { ! Run(fileName, buffer); ! } ! break; ! } ! case wxLUASOCKET_DEBUGGER_CMD_DEBUG_STEP: ! { ! Step(); ! break; ! } ! case wxLUASOCKET_DEBUGGER_CMD_DEBUG_STEPOVER: ! { ! StepOver(); ! break; ! } ! case wxLUASOCKET_DEBUGGER_CMD_DEBUG_STEPOUT: ! { ! StepOut(); ! break; ! } ! case wxLUASOCKET_DEBUGGER_CMD_DEBUG_CONTINUE: ! { ! Continue(); ! break; ! } ! case wxLUASOCKET_DEBUGGER_CMD_DEBUG_BREAK: { ! Break(); ! break; } ! case wxLUASOCKET_DEBUGGER_CMD_ENUMERATE_STACK: { ! EnumerateStack(); ! break; } ! case wxLUASOCKET_DEBUGGER_CMD_ENUMERATE_STACK_ENTRY: ! { ! wxInt32 stackRef = 0; ! if (m_clientSocket.ReadInt32(stackRef)) ! EnumerateStackEntry(stackRef); ! break; ! } ! case wxLUASOCKET_DEBUGGER_CMD_ENUMERATE_TABLE_REF: ! { ! wxInt32 tableRef = 0; ! wxInt32 index = 0; ! long itemNode = 0; ! if (m_clientSocket.ReadInt32(tableRef) && ! m_clientSocket.ReadInt32(index) && ! m_clientSocket.ReadLong(itemNode)) ! { ! EnumerateTable(tableRef, index, itemNode); ! } ! break; ! } ! case wxLUASOCKET_DEBUGGER_CMD_RESET: { ! Reset(); ! break; } ! case wxLUASOCKET_DEBUGGER_CMD_EVALUATE_EXPR: ! { ! wxInt32 exprRef = 0; ! wxString buffer; ! if (m_clientSocket.ReadInt32(exprRef) && ! m_clientSocket.ReadString(buffer)) ! { ! EvaluateExpr(exprRef, buffer); ! } ! break; } ! case wxLUASOCKET_DEBUGGER_CMD_CLEAR_DEBUG_REFERENCES: { ! size_t idx, idxMax = m_references.GetCount(); ! for (idx = 0; idx < idxMax; ++idx) ! { ! int iItem = m_references.Item(idx); ! m_wxlState.tremove(iItem); ! } ! // FIXME - should we also remove the array items ! break; } ! case wxLUASOCKET_DEBUGGER_CMD_DISABLE_BREAKPOINT: ! break; ! case wxLUASOCKET_DEBUGGER_CMD_ENABLE_BREAKPOINT: ! break; ! default : ! wxFAIL_MSG(wxT("Invalid wxLuaSocketDebuggerCommands_Type in wxLuaDebugTarget::ThreadFunction")); } ! } ! catch(...) ! { ! fThreadRunning = false; } } } --- 194,355 ---- } ! if (HandleDebuggerCmd(debugCommand) == -1) ! fThreadRunning = false; ! } ! catch(...) ! { ! fThreadRunning = false; ! } ! } ! } ! int wxLuaDebugTarget::HandleDebuggerCmd(int debugCommand) ! { ! try ! { ! switch ((int)debugCommand) ! { ! case wxLUASOCKET_DEBUGGER_CMD_NONE : ! { ! // This is an error, but maybe we can continue? ! break; ! } ! case wxLUASOCKET_DEBUGGER_CMD_ADD_BREAKPOINT: ! { ! wxString fileName; ! wxInt32 lineNumber = 0; ! if (m_clientSocket.ReadString(fileName) && ! m_clientSocket.ReadInt32(lineNumber)) { ! AddBreakPoint(fileName, lineNumber); } ! break; ! } ! case wxLUASOCKET_DEBUGGER_CMD_REMOVE_BREAKPOINT: ! { ! wxString fileName; ! wxInt32 lineNumber = 0; ! if (m_clientSocket.ReadString(fileName) && ! m_clientSocket.ReadInt32(lineNumber)) { ! RemoveBreakPoint(fileName, lineNumber); } ! break; ! } ! case wxLUASOCKET_DEBUGGER_CMD_CLEAR_ALL_BREAKPOINTS: ! { ! ClearAllBreakPoints(); ! break; ! } ! case wxLUASOCKET_DEBUGGER_CMD_RUN_BUFFER: ! { ! wxString fileName; ! wxString buffer; ! ! if (m_clientSocket.ReadString(fileName) && ! m_clientSocket.ReadString(buffer)) { ! Run(fileName, buffer); } ! break; ! } ! case wxLUASOCKET_DEBUGGER_CMD_DEBUG_STEP: ! { ! Step(); ! break; ! } ! case wxLUASOCKET_DEBUGGER_CMD_DEBUG_STEPOVER: ! { ! StepOver(); ! break; ! } ! case wxLUASOCKET_DEBUGGER_CMD_DEBUG_STEPOUT: ! { ! StepOut(); ! break; ! } ! case wxLUASOCKET_DEBUGGER_CMD_DEBUG_CONTINUE: ! { ! Continue(); ! break; ! } ! case wxLUASOCKET_DEBUGGER_CMD_DEBUG_BREAK: ! { ! Break(); ! break; ! } ! case wxLUASOCKET_DEBUGGER_CMD_ENUMERATE_STACK: ! { ! EnumerateStack(); ! break; ! } ! case wxLUASOCKET_DEBUGGER_CMD_ENUMERATE_STACK_ENTRY: ! { ! wxInt32 stackRef = 0; ! if (m_clientSocket.ReadInt32(stackRef)) ! EnumerateStackEntry(stackRef); ! break; ! } ! case wxLUASOCKET_DEBUGGER_CMD_ENUMERATE_TABLE_REF: ! { ! wxInt32 tableRef = 0; ! wxInt32 index = 0; ! long itemNode = 0; ! if (m_cl... [truncated message content] |
From: John L. <jr...@us...> - 2006-10-04 02:49:22
|
Update of /cvsroot/wxlua/wxLua/samples In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv31238/wxLua/samples Modified Files: editor.wx.lua Log Message: Index: editor.wx.lua =================================================================== RCS file: /cvsroot/wxlua/wxLua/samples/editor.wx.lua,v retrieving revision 1.26 retrieving revision 1.27 diff -C2 -d -r1.26 -r1.27 *** editor.wx.lua 26 Sep 2006 05:05:55 -0000 1.26 --- editor.wx.lua 28 Sep 2006 22:26:06 -0000 1.27 *************** *** 260,268 **** function UpdateStatusText(editor) if editor then ! local pos = editor:GetCurrentPos() ! local row = editor:LineFromPosition(pos) ! local col = 1 + pos - editor:PositionFromLine(row) ! frame:SetStatusText("Ln "..tostring(row + 1).." Col "..tostring(col), 3) if editor:GetOvertype() then --- 260,268 ---- function UpdateStatusText(editor) if editor then ! local pos = editor:GetCurrentPos() ! local line = editor:LineFromPosition(pos) ! local col = 1 + pos - editor:PositionFromLine(line) ! frame:SetStatusText("Ln "..tostring(line + 1).." Col "..tostring(col), 3) if editor:GetOvertype() then *************** *** 1200,1204 **** fHaveFound = nil ! frame:SetStatusText("Not found.") else fHaveFound = 1 --- 1200,1204 ---- fHaveFound = nil ! frame:SetStatusText("Find text not found.") else fHaveFound = 1 *************** *** 1435,1440 **** end ! function ToggleDebugMarker(editor, row) ! local markers = editor:MarkerGet(row) if markers >= CURRENT_LINE_MARKER_VALUE then markers = markers - CURRENT_LINE_MARKER_VALUE --- 1435,1440 ---- end ! function ToggleDebugMarker(editor, line) ! local markers = editor:MarkerGet(line) if markers >= CURRENT_LINE_MARKER_VALUE then markers = markers - CURRENT_LINE_MARKER_VALUE *************** *** 1443,1464 **** local filePath = MakeDebugFileName(editor, openDocuments[id].filePath) if markers >= BREAKPOINT_MARKER_VALUE then ! editor:MarkerDelete(row, BREAKPOINT_MARKER) if debugServer then ! debugServer:RemoveBreakPoint(filePath, row) end else ! editor:MarkerAdd(row, BREAKPOINT_MARKER) if debugServer then ! debugServer:AddBreakPoint(filePath, row) end end end frame:Connect(ID_TOGGLEBREAKPOINT, wx.wxEVT_COMMAND_MENU_SELECTED, function (event) local editor = GetEditor() ! local pos = editor:GetCurrentPos() ! local row = editor:LineFromPosition(pos) ! ToggleDebugMarker(editor, row) end) frame:Connect(ID_TOGGLEBREAKPOINT, wx.wxEVT_UPDATE_UI, OnUpdateUIEditMenu) --- 1443,1473 ---- local filePath = MakeDebugFileName(editor, openDocuments[id].filePath) if markers >= BREAKPOINT_MARKER_VALUE then ! editor:MarkerDelete(line, BREAKPOINT_MARKER) if debugServer then ! debugServer:RemoveBreakPoint(filePath, line) end else ! editor:MarkerAdd(line, BREAKPOINT_MARKER) if debugServer then ! debugServer:AddBreakPoint(filePath, line) end end end + function DisplayOutput(message) + if splitter:IsSplit() == false then + local x, y = frame:GetClientSize() + splitter:SplitHorizontally(notebook, errorLog, (2 * y) / 3) + end + errorLog:SetReadOnly(false) + errorLog:AddText(message) + errorLog:SetReadOnly(true) + end + frame:Connect(ID_TOGGLEBREAKPOINT, wx.wxEVT_COMMAND_MENU_SELECTED, function (event) local editor = GetEditor() ! local line = editor:LineFromPosition(editor:GetCurrentPos()) ! ToggleDebugMarker(editor, line) end) frame:Connect(ID_TOGGLEBREAKPOINT, wx.wxEVT_UPDATE_UI, OnUpdateUIEditMenu) *************** *** 1470,1474 **** local id = editor:GetId() local filePath = MakeDebugFileName(editor, openDocuments[id].filePath) ! wx.wxLuaDebuggerServerCompile(filePath, editorText) end) frame:Connect(ID_COMPILE, wx.wxEVT_UPDATE_UI, OnUpdateUIEditMenu) --- 1479,1489 ---- local id = editor:GetId() local filePath = MakeDebugFileName(editor, openDocuments[id].filePath) ! local ret, errMsg, line_num = wx.CompileLuaScript(editorText, filePath) ! ! if line_num > -1 then ! DisplayOutput("Compliation error on line number :"..tostring(line_num).."\n") ! editor:GotoLine(line_num-1) ! end ! DisplayOutput(errMsg.."\n") end) frame:Connect(ID_COMPILE, wx.wxEVT_UPDATE_UI, OnUpdateUIEditMenu) *************** *** 1521,1527 **** end) frame:Connect(ID_START_DEBUG, wx.wxEVT_COMMAND_MENU_SELECTED, function (event) ! debugServer = wx.wxLuaDebuggerServer(portNumber) if debugServer then debugServer:StartClient() --- 1536,1690 ---- end) + function CreateDebugServer() + local debugServer = wx.wxLuaDebuggerServer(portNumber) + if not debugServer then return nil end + + function DownloadBreakpoints(editor, fileName) + local nextLine = editor:MarkerNext(0, BREAKPOINT_MARKER_VALUE) + while nextLine ~= -1 do + debugServer:AddBreakPoint(fileName, nextLine) + nextLine = editor:MarkerNext(nextLine + 1, BREAKPOINT_MARKER_VALUE) + end + end + + debugServer:Connect(wx.wxID_ANY, wx.wxEVT_WXLUA_DEBUGGER_CLIENT_CONNECTED, + function (event) + if debugServer then + for id, document in pairs(openDocuments) do + local editor = document.editor + local editorText = editor:GetText() + local filePath = MakeDebugFileName(editor, document.filePath) + debugServer:Run(filePath, editorText) + DownloadBreakpoints(editor, filePath) + end + fIsConnected = 1 + debugServer:Step() + fIsRunning = 1 + + UpdateUIMenuItems() + end + DisplayOutput("Client connected\n") + end) + + function DebuggerIgnoreFile(fileName) + ignoreFlag = nil + for idx, ignoreFile in pairs(ignoredFilesList) do + if string.upper(ignoreFile) == string.upper(fileName) then + ignoreFlag = 1 + end + end + return ignoreFlag + end + + debugServer:Connect(wx.wxID_ANY, wx.wxEVT_WXLUA_DEBUGGER_BREAK, + function (event) + if exitingProgram then return end + local line = event:GetLineNumber() + local eventFileName = event:GetFileName() + if string.sub(eventFileName, 1, 1) == '@' then + eventFileName = string.sub(eventFileName, 2, -1) + if wx.wxIsAbsolutePath(eventFileName) == false then + eventFileName = wx.wxGetCwd().."/"..eventFileName + end + end + if wx.wxPlatformWindows then + eventFileName = wx.wxUnix2DosFilename(eventFileName) + end + local fileFound = false + DisplayOutput("At Breakpoint line: "..tostring(line).." file: "..eventFileName.."\n") + for id, document in pairs(openDocuments) do + local editor = document.editor + local filePath = MakeDebugFileName(editor, document.filePath) + -- for running in cygwin, use same type of separators + filePath = string.gsub(filePath, "\\", "/") + local eventFileName_ = string.gsub(eventFileName, "\\", "/") + if string.upper(filePath) == string.upper(eventFileName_) then + local selection = document.index + notebook:SetSelection(selection) + SetEditorSelection(selection) + editor:MarkerAdd(line, CURRENT_LINE_MARKER) + editor:EnsureVisibleEnforcePolicy(line) + fileFound = true + break + end + end + if not DebuggerIgnoreFile(eventFileName) then + if not fileFound then + local fileDialog = wx.wxFileDialog(frame, + "Select file for debugging", + "", + eventFileName, + "Lua files (*.lua)|*.lua|Text files (*.txt)|*.txt|All files (*)|*", + wx.wxOPEN) + if fileDialog:ShowModal() == wx.wxID_OK then + local editor = LoadFile(fileDialog:GetPath(), fileDialog:GetFilename()) + if editor then + editor:MarkerAdd(line, CURRENT_LINE_MARKER) + editor:EnsureVisibleEnforcePolicy(line) + editor:SetReadOnly(true) + fileFound = true + end + end + fileDialog:Destroy() + end + if not fileFound then + table.insert(ignoredFilesList, eventFileName) + end + end + + if fileFound then + fIsRunning = nil + ProcessWatches() + elseif debugServer then + debugServer:Continue() + fIsRunning = 1 + end + end) + + debugServer:Connect(wx.wxID_ANY, wx.wxEVT_WXLUA_DEBUGGER_PRINT, + function (event) + DisplayOutput(event:GetMessage().."\n") + end) + + debugServer:Connect(wx.wxID_ANY, wx.wxEVT_WXLUA_DEBUGGER_ERROR, + function (event) + DisplayOutput("wxLua ERROR: "..event:GetMessage().."\n") + end) + + debugServer:Connect(wx.wxID_ANY, wx.wxEVT_WXLUA_DEBUGGER_EXIT, + function (event) + for id, document in pairs(openDocuments) do + local editor = document.editor + editor:MarkerDeleteAll(CURRENT_LINE_MARKER) + end + fIsConnected = nil + if debugServer then + debugServer:Delete() + fIsRunning = nil + debugServer = nil + end + SetAllEditorsReadOnly(false) + ignoredFilesList = {} + DisplayOutput("\nDebugger Client finished\n\n") + end) + + debugServer:Connect(wx.wxID_ANY, wx.wxEVT_WXLUA_DEBUGGER_EVALUATE_EXPR, + function (event) + if watchListCtrl then + watchListCtrl:SetStringItem(event:GetReference(), + 1, + event:GetMessage()) + end + end) + + + + return debugServer + end + + frame:Connect(ID_START_DEBUG, wx.wxEVT_COMMAND_MENU_SELECTED, function (event) ! debugServer = CreateDebugServer() if debugServer then debugServer:StartClient() *************** *** 1660,1812 **** end) - function DownloadBreakpoints(editor, fileName) - local nextLine = editor:MarkerNext(0, BREAKPOINT_MARKER_VALUE) - while nextLine ~= -1 do - debugServer:AddBreakPoint(fileName, nextLine) - nextLine = editor:MarkerNext(nextLine + 1, BREAKPOINT_MARKER_VALUE) - end - end - - editorApp:Connect(wx.wxID_ANY, wx.wxEVT_WXLUA_DEBUGGER_CLIENT_CONNECTED, - function (event) - if debugServer then - for id, document in pairs(openDocuments) do - local editor = document.editor - local editorText = editor:GetText() - local filePath = MakeDebugFileName(editor, document.filePath) - debugServer:Run(filePath, editorText) - DownloadBreakpoints(editor, filePath) - end - fIsConnected = 1 - debugServer:Step() - fIsRunning = 1 - - UpdateUIMenuItems() - end - DisplayOutput("Client connected\n") - - end) - - function DebuggerIgnoreFile(fileName) - ignoreFlag = nil - for idx, ignoreFile in pairs(ignoredFilesList) do - if string.upper(ignoreFile) == string.upper(fileName) then - ignoreFlag = 1 - end - end - return ignoreFlag - end - - editorApp:Connect(wx.wxID_ANY, wx.wxEVT_WXLUA_DEBUGGER_BREAK, - function (event) - if exitingProgram then return end - local row = event:GetLineNumber() - local eventFileName = event:GetFileName() - if string.sub(eventFileName, 1, 1) == '@' then - eventFileName = string.sub(eventFileName, 2, -1) - if wx.wxIsAbsolutePath(eventFileName) == false then - eventFileName = wx.wxGetCwd().."/"..eventFileName - end - end - if wx.wxPlatformWindows then - eventFileName = wx.wxUnix2DosFilename(eventFileName) - end - local fileFound = false - DisplayOutput("At Breakpoint line: "..tostring(row).." file: "..eventFileName.."\n") - for id, document in pairs(openDocuments) do - local editor = document.editor - local filePath = MakeDebugFileName(editor, document.filePath) - -- for running in cygwin, use same type of separators - filePath = string.gsub(filePath, "\\", "/") - local eventFileName_ = string.gsub(eventFileName, "\\", "/") - if string.upper(filePath) == string.upper(eventFileName_) then - local selection = document.index - notebook:SetSelection(selection) - SetEditorSelection(selection) - editor:MarkerAdd(row, CURRENT_LINE_MARKER) - editor:EnsureVisibleEnforcePolicy(row) - fileFound = true - break - end - end - if not DebuggerIgnoreFile(eventFileName) then - if not fileFound then - local fileDialog = wx.wxFileDialog(frame, - "Select file for debugging", - "", - eventFileName, - "Lua files (*.lua)|*.lua|Text files (*.txt)|*.txt|All files (*)|*", - wx.wxOPEN) - if fileDialog:ShowModal() == wx.wxID_OK then - local editor = LoadFile(fileDialog:GetPath(), fileDialog:GetFilename()) - if editor then - editor:MarkerAdd(row, CURRENT_LINE_MARKER) - editor:EnsureVisibleEnforcePolicy(row) - editor:SetReadOnly(true) - fileFound = true - end - end - fileDialog:Destroy() - end - if not fileFound then - table.insert(ignoredFilesList, eventFileName) - end - end - - if fileFound then - fIsRunning = nil - ProcessWatches() - elseif debugServer then - debugServer:Continue() - fIsRunning = 1 - end - end) - - function DisplayOutput(message) - if splitter:IsSplit() == false then - local x, y = frame:GetClientSize() - splitter:SplitHorizontally(notebook, errorLog, (2 * y) / 3) - end - errorLog:SetReadOnly(false) - errorLog:AddText(message) - errorLog:SetReadOnly(true) - end - - editorApp:Connect(wx.wxID_ANY, wx.wxEVT_WXLUA_DEBUGGER_PRINT, - function (event) - DisplayOutput(event:GetMessage().."\n") - end) - - editorApp:Connect(wx.wxID_ANY, wx.wxEVT_WXLUA_DEBUGGER_ERROR, - function (event) - DisplayOutput("wxLua ERROR: "..event:GetMessage().."\n") - end) - - editorApp:Connect(wx.wxID_ANY, wx.wxEVT_WXLUA_DEBUGGER_EXIT, - function (event) - for id, document in pairs(openDocuments) do - local editor = document.editor - editor:MarkerDeleteAll(CURRENT_LINE_MARKER) - end - fIsConnected = nil - if debugServer then - debugServer:Delete() - fIsRunning = nil - debugServer = nil - end - SetAllEditorsReadOnly(false) - ignoredFilesList = {} - DisplayOutput("\nDebugger Client finished\n\n") - end) - - editorApp:Connect(wx.wxID_ANY, wx.wxEVT_WXLUA_DEBUGGER_EVALUATE_EXPR, - function (event) - if watchListCtrl then - watchListCtrl:SetStringItem(event:GetReference(), - 1, - event:GetMessage()) - end - end) - -- --------------------------------------------------------------------------- -- Create the Help menu and attach the callback functions --- 1823,1826 ---- |
From: John L. <jr...@us...> - 2006-10-04 02:49:21
|
Update of /cvsroot/wxlua/wxLua/modules/wxluasocket/include In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv31238/wxLua/modules/wxluasocket/include Modified Files: dservice.h wxldserv.h wxldtarg.h wxlhandl.h wxlsock.h Log Message: Index: dservice.h =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxluasocket/include/dservice.h,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** dservice.h 13 Sep 2006 04:13:47 -0000 1.16 --- dservice.h 28 Sep 2006 22:26:05 -0000 1.17 *************** *** 179,182 **** --- 179,187 ---- bool m_InDebugHook; bool m_Wait; + wxCriticalSection m_luaCriticalSection; + + // Enter/Leave critical section for the threaded sockets + void EnterLuaCriticalSection() { m_luaCriticalSection.Enter(); } + void LeaveLuaCriticalSection() { m_luaCriticalSection.Leave(); } mutable wxCriticalSection m_breakPointListCriticalSection; Index: wxldserv.h =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxluasocket/include/wxldserv.h,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** wxldserv.h 15 Sep 2006 00:10:56 -0000 1.14 --- wxldserv.h 28 Sep 2006 22:26:05 -0000 1.15 *************** *** 21,28 **** class WXDLLIMPEXP_WXLUASOCKET wxLuaDebuggerServer; class WXDLLIMPEXP_WXLUASOCKET wxLuaDebuggerEvent; ! class WXDLLIMPEXP_WXLUADEBUG wxLuaStackDialog; // ---------------------------------------------------------------------------- ! // wxLuaSocketDebuggeeEvents_Type - socket events sent from debuggee to debugger // ---------------------------------------------------------------------------- --- 21,29 ---- class WXDLLIMPEXP_WXLUASOCKET wxLuaDebuggerServer; class WXDLLIMPEXP_WXLUASOCKET wxLuaDebuggerEvent; ! class WXDLLIMPEXP_WXLUADEBUG wxLuaStackDialog; // ---------------------------------------------------------------------------- ! // wxLuaSocketDebuggeeEvents_Type - These are socket events sent from debuggee ! // to debugger to notify the debugger that action has been taken. // ---------------------------------------------------------------------------- *************** *** 45,49 **** // ---------------------------------------------------------------------------- ! // wxLuaSocketDebuggerCommands_Type - socket commands sent from debugger to debuggee // ---------------------------------------------------------------------------- --- 46,52 ---- // ---------------------------------------------------------------------------- ! // wxLuaSocketDebuggerCommands_Type - These are socket commands sent from the ! // debugger to debuggee to direct the debuggee to take action, which will ! // then return with a wxLuaSocketDebuggeeEvents_Type when done. // ---------------------------------------------------------------------------- *************** *** 52,56 **** wxLUASOCKET_DEBUGGER_CMD_NONE = 0, // a socket error probably ! wxLUASOCKET_DEBUGGER_CMD_ADD_BREAKPOINT = 100, wxLUASOCKET_DEBUGGER_CMD_REMOVE_BREAKPOINT, wxLUASOCKET_DEBUGGER_CMD_CLEAR_ALL_BREAKPOINTS, --- 55,59 ---- wxLUASOCKET_DEBUGGER_CMD_NONE = 0, // a socket error probably ! wxLUASOCKET_DEBUGGER_CMD_ADD_BREAKPOINT = 100, // shifted for debugging wxLUASOCKET_DEBUGGER_CMD_REMOVE_BREAKPOINT, wxLUASOCKET_DEBUGGER_CMD_CLEAR_ALL_BREAKPOINTS, *************** *** 94,97 **** --- 97,101 ---- // ---------------------------------------------------------------------------- // wxLuaDebuggerBase - Debugger interface base class + // // ---------------------------------------------------------------------------- *************** *** 99,105 **** { public: ! wxLuaDebuggerBase() {} virtual ~wxLuaDebuggerBase() {} virtual bool AddBreakPoint(const wxString &fileName, int lineNumber); virtual bool RemoveBreakPoint(const wxString &fileName, int lineNumber); --- 103,112 ---- { public: ! wxLuaDebuggerBase() : wxEvtHandler(), m_stackDialog(NULL) {} virtual ~wxLuaDebuggerBase() {} + // These functions all send socket commands wxLUASOCKET_DEBUGGER_CMD_XXX + // and the appropriate data to the debuggee. + virtual bool AddBreakPoint(const wxString &fileName, int lineNumber); virtual bool RemoveBreakPoint(const wxString &fileName, int lineNumber); *************** *** 120,132 **** virtual bool EvaluateExpr(int exprRef, const wxString &strExpression); ! virtual bool Compile(const wxString &fileName, const wxString &buffer); ! virtual void NotifyError(const wxString &msg); ! virtual int HandleDebugEvent(wxLuaSocketDebuggeeEvents_Type event_type); ! virtual wxLuaSocketBase* GetSocketBase() { return NULL; } private: DECLARE_ABSTRACT_CLASS(wxLuaDebuggerBase) }; --- 127,153 ---- virtual bool EvaluateExpr(int exprRef, const wxString &strExpression); ! // compile the buffer in a temp lua_State returning true on success. ! // Always sends a wxEVT_WXLUA_DEBUGGER_ERROR event with a message. ! bool Compile(const wxString &fileName, const wxString &buffer); ! virtual int HandleDebuggeeEvent(wxLuaSocketDebuggeeEvents_Type event_type); ! // Get the debugger socket to read/write data to ! virtual wxLuaSocketBase* GetSocketBase() = 0; ! // Get/Set the wxLuaStackDialog to show the stack of the debugged program ! wxLuaStackDialog* GetStackDialog() { return m_stackDialog; } ! void SetStackDialog(wxLuaStackDialog *stackDialog) { m_stackDialog = stackDialog; } ! ! // Handle the stack dialog events using the internal wxLuaStackDialog ! void OnDebugStackEnum(wxLuaDebuggerEvent &event); ! void OnDebugTableEnum(wxLuaDebuggerEvent &event); ! void OnDebugStackEntryEnum(wxLuaDebuggerEvent &event); ! ! protected: ! wxLuaStackDialog *m_stackDialog; private: + DECLARE_EVENT_TABLE(); DECLARE_ABSTRACT_CLASS(wxLuaDebuggerBase) }; *************** *** 184,188 **** wxProcess *m_pProcess; wxLuaDebuggerServer::LuaThread *m_pThread; - wxLuaStackDialog *m_pStackDialog; bool m_fShutdown; --- 205,208 ---- *************** *** 203,212 **** wxLuaDebuggerEvent(const wxLuaDebuggerEvent& event); wxLuaDebuggerEvent(wxEventType eventType = wxEVT_NULL, int lineNumber = 0, const wxString &fileName = wxEmptyString, bool enabledFlag = false); - virtual ~wxLuaDebuggerEvent(); - void SetMessage(const wxString &message); void SetDebugData(long nReference, const wxLuaDebugData& pDebugData = wxLuaDebugData()); --- 223,231 ---- wxLuaDebuggerEvent(const wxLuaDebuggerEvent& event); wxLuaDebuggerEvent(wxEventType eventType = wxEVT_NULL, + wxObject* eventObject = NULL, int lineNumber = 0, const wxString &fileName = wxEmptyString, bool enabledFlag = false); void SetMessage(const wxString &message); void SetDebugData(long nReference, const wxLuaDebugData& pDebugData = wxLuaDebugData()); Index: wxlsock.h =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxluasocket/include/wxlsock.h,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** wxlsock.h 25 Sep 2006 22:24:46 -0000 1.13 --- wxlsock.h 28 Sep 2006 22:26:05 -0000 1.14 *************** *** 34,41 **** #endif // !WIN32 #ifndef SD_RECEIVE ! #define SD_RECEIVE 0 ! #define SD_SEND 1 ! #define SD_BOTH 2 #endif // SD_RECEIVE --- 34,42 ---- #endif // !WIN32 + // This is the MSW version of SHUT_RDWR for ::shutdown(sock, how=SHUT_RDWR) #ifndef SD_RECEIVE ! #define SD_RECEIVE SHUT_RD ! #define SD_SEND SHUT_WR ! #define SD_BOTH SHUT_RDWR #endif // SD_RECEIVE *************** *** 43,51 **** // ---------------------------------------------------------------------------- // wxLuaSocketBase - a base class for different socket implementations ! // ! // You must override virtual int Read(...) and virtual int Write(...) // ---------------------------------------------------------------------------- ! class WXDLLIMPEXP_WXLUASOCKET wxLuaSocketBase { public: --- 44,53 ---- // ---------------------------------------------------------------------------- // wxLuaSocketBase - a base class for different socket implementations ! // The derived socket class must override virtual int Read(...) and ! // virtual int Write(...) which all the other ReadXXX and WriteXXX functions ! // of this class use. // ---------------------------------------------------------------------------- ! class WXDLLIMPEXP_WXLUASOCKET wxLuaSocketBase : public wxObject { public: *************** *** 57,85 **** // Read the number of bytes length into buffer buffer from the socket virtual int Read(char *buffer, wxUint32 length) = 0; // Write the whole buffer of number of bytes length to the socket virtual int Write(const char *buffer, wxUint32 length) = 0; // Read data from the socket, calls virtual int Read(...) ! bool ReadByte(unsigned char& value); bool ReadInt32(wxInt32& value); ! bool ReadUInt32(wxUint32& value); ! bool ReadLong(long& value); bool ReadString(wxString& value); bool ReadDebugData(wxLuaDebugData& data); // Write data to the socket, calls virtual void Write(...) ! bool WriteByte(char value); bool WriteInt32(wxInt32 value); ! bool WriteUInt32(wxUint32 value); ! bool WriteLong(long value); bool WriteString(const wxString &value); bool WriteDebugData(const wxLuaDebugData& debugData); ! wxString m_name; // a name for the socket, for debugging }; // ---------------------------------------------------------------------------- ! // wxLuaSocket // ---------------------------------------------------------------------------- --- 59,89 ---- // Read the number of bytes length into buffer buffer from the socket + // the buffer must be large enough to hold the data. virtual int Read(char *buffer, wxUint32 length) = 0; // Write the whole buffer of number of bytes length to the socket virtual int Write(const char *buffer, wxUint32 length) = 0; + // Note: Read/WriteCmd reads/writes a byte and if debugging prints the cmd/event type + // Read data from the socket, calls virtual int Read(...) ! // false is returned on failure and the input var is not modified ! bool ReadCmd(unsigned char& value); bool ReadInt32(wxInt32& value); ! bool ReadLong(long& value); // reads platform independent long using a string bool ReadString(wxString& value); bool ReadDebugData(wxLuaDebugData& data); // Write data to the socket, calls virtual void Write(...) ! bool WriteCmd(char value); bool WriteInt32(wxInt32 value); ! bool WriteLong(long value); // write platform independent long using a string bool WriteString(const wxString &value); bool WriteDebugData(const wxLuaDebugData& debugData); ! wxString m_name; // a readable name for the socket, for debugging }; // ---------------------------------------------------------------------------- ! // wxLuaSocket - a c socket implementation // ---------------------------------------------------------------------------- *************** *** 122,126 **** wxLuaSocket(const wxLuaAcceptedSocket &acceptedSocket); - // destructor virtual ~wxLuaSocket(); --- 126,129 ---- *************** *** 160,171 **** // Get the port number of the socket int GetPort() const; ! // Read the whole buffer of size length into buffer buffer from the socket virtual int Read(char *buffer, wxUint32 length); ! // Write the whole buffer of size length to the socket virtual int Write(const char *buffer, wxUint32 length); ! // Shutdown the socket in an orderly fashion ! void Shutdown(int how); ! // Close the open socket ! void Close(); private: --- 163,175 ---- // Get the port number of the socket int GetPort() const; ! // Read the whole buffer of byte size length into buffer from the socket virtual int Read(char *buffer, wxUint32 length); ! // Write the whole buffer of byte size length to the socket virtual int Write(const char *buffer, wxUint32 length); ! // Shutdown the socket in an orderly fashion, ::shutdown(sock, how) ! // returns true on success, if false then check errno ! bool Shutdown(int how = SD_BOTH); ! // Close the open socket, returns true on success ! bool Close(); private: Index: wxldtarg.h =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxluasocket/include/wxldtarg.h,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** wxldtarg.h 15 Sep 2006 00:10:56 -0000 1.16 --- wxldtarg.h 28 Sep 2006 22:26:05 -0000 1.17 *************** *** 52,55 **** --- 52,56 ---- void ThreadFunction(); + int HandleDebuggerCmd(int cmd); void DisplayError(const wxString &strError); *************** *** 85,88 **** --- 86,94 ---- LuaThread *m_pThread; wxArrayInt m_references; + wxCriticalSection m_luaCriticalSection; + + // Enter/Leave critical section for the threaded sockets + void EnterLuaCriticalSection() { m_luaCriticalSection.Enter(); } + void LeaveLuaCriticalSection() { m_luaCriticalSection.Leave(); } void ExitThread(); Index: wxlhandl.h =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxluasocket/include/wxlhandl.h,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** wxlhandl.h 15 Sep 2006 00:10:56 -0000 1.9 --- wxlhandl.h 28 Sep 2006 22:26:05 -0000 1.10 *************** *** 16,55 **** #endif - #include "wx/thread.h" #include "wxluasocket/include/wxluasocketdefs.h" - class WXDLLIMPEXP_WXLUASOCKET wxLuaDebuggerEvent; - class WXDLLIMPEXP_WXLUADEBUG wxLuaStackDialog; - - // ---------------------------------------------------------------------------- - // wxLuaHandler - Allow for Custom Lua Handler (an alternative to wxLuaApp) - // ---------------------------------------------------------------------------- - - class WXDLLIMPEXP_WXLUASOCKET wxLuaHandler - { - public: - wxLuaHandler(); - virtual ~wxLuaHandler(); - - virtual void AddPendingEvent(wxEvent& event) = 0; - virtual bool ProcessEvent(wxEvent& event) = 0; - virtual void DisplayError(const wxString &strError) const = 0; - - void SetStackDialog(wxLuaStackDialog *stackDialog) { m_stackDialog = stackDialog; } - wxLuaStackDialog* GetStackDialog() { return m_stackDialog; } - - void EnterLuaCriticalSection() { m_luaCriticalSection.Enter(); } - void LeaveLuaCriticalSection() { m_luaCriticalSection.Leave(); } - - // Get the single global wxLuaHandler - // note: if sm_luahandler = NULL let this fail hard, it should NEVER happen - static wxLuaHandler& GetHandler() { return *sm_luaHandler; } - - protected: - wxLuaStackDialog *m_stackDialog; - - static wxLuaHandler* sm_luaHandler; - wxCriticalSection m_luaCriticalSection; - }; - #endif //_WXLHANDL_H_ --- 16,20 ---- |
From: John L. <jr...@us...> - 2006-10-04 02:49:20
|
Update of /cvsroot/wxlua/wxLua/modules/wxlua/include In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv31238/wxLua/modules/wxlua/include Modified Files: wxlstate.h Log Message: Index: wxlstate.h =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxlua/include/wxlstate.h,v retrieving revision 1.50 retrieving revision 1.51 diff -C2 -d -r1.50 -r1.51 *** wxlstate.h 28 Aug 2006 05:26:20 -0000 1.50 --- wxlstate.h 28 Sep 2006 22:26:05 -0000 1.51 *************** *** 402,414 **** // Try to compile the lua program. Creates new lua_State to test for syntax ! // errors and sends error events. ! int CompileString(const wxString &script, const wxString& name = wxEmptyString); ! int CompileBuffer(const unsigned char buf[], size_t size, const wxString &name = wxEmptyString); // checks the status with CheckRunError and tries to get lua's error string ! // from the top of the stack and sends a wxEVT_LUA_ERROR // top is the lua_gettop from before the call that may have generated the error // see usage in RunBuffer ! int LuaError(int status, int top); // Check the return value of LuaDoFile, LuaDoBuffer, lua_dostring, lua_dofile // returns true for no error, if error fills msg with a useful message if !NULL --- 402,417 ---- // Try to compile the lua program. Creates new lua_State to test for syntax ! // errors and sends error events. See LuaError() for errMsg and line_num. ! int CompileString(const wxString &script, const wxString& name = wxEmptyString, wxString* errMsg_ = NULL, int* line_num = NULL); ! int CompileBuffer(const unsigned char buf[], size_t size, const wxString &name = wxEmptyString, wxString* errMsg_ = NULL, int* line_num = NULL); // checks the status with CheckRunError and tries to get lua's error string ! // from the top of the stack and sends a wxEVT_LUA_ERROR. ! // If the lua_State is NULL then use the internal one from this class. ! // If errMsg and line_num aren't null then fill them with the msg and line. ! // this info is the same as in the error event. // top is the lua_gettop from before the call that may have generated the error // see usage in RunBuffer ! int LuaError(int status, int top, lua_State* L = NULL, wxString* errMsg_ = NULL, int* line_num = NULL); // Check the return value of LuaDoFile, LuaDoBuffer, lua_dostring, lua_dofile // returns true for no error, if error fills msg with a useful message if !NULL |
From: John L. <jr...@us...> - 2006-10-04 02:49:20
|
Update of /cvsroot/wxlua/wxLua/apps/wxlua/src In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv31238/wxLua/apps/wxlua/src Modified Files: editor.h wxlua.cpp wxlua.h Log Message: Index: wxlua.cpp =================================================================== RCS file: /cvsroot/wxlua/wxLua/apps/wxlua/src/wxlua.cpp,v retrieving revision 1.35 retrieving revision 1.36 diff -C2 -d -r1.35 -r1.36 *** wxlua.cpp 15 Sep 2006 00:10:55 -0000 1.35 --- wxlua.cpp 28 Sep 2006 22:26:01 -0000 1.36 *************** *** 30,35 **** #include "wxlua/include/wxlua.h" #include "wxluasocket/include/wxldserv.h" - #include "wxluasocket/include/wxlhandl.h" - #include "wxluadebug/include/staktree.h" #include "wxlua.h" --- 30,33 ---- *************** *** 43,105 **** // Declare the binding initialization functions as extern so we don't have to // #include the binding header for simplicity. ! extern bool wxLuaBinding_wx_init(); ! extern bool wxLuaBinding_wxstc_init(); ! extern bool wxLuaBinding_wxluasocket_init(); ! ! // --------------------------------------------------------------------------- ! // wxLuaStackDialog ! // --------------------------------------------------------------------------- ! ! int LUACALL wxLua_lua_stackDialog(lua_State *L) ! { ! wxLuaInterface* li = new wxLuaInterface(L); ! wxLuaStackDialog *pStackDialog = new wxLuaStackDialog(NULL, ! wxT("wxLua stack frame"), ! wxDefaultPosition, ! wxSize(500, 250), ! li); ! wxLuaHandler::GetHandler().SetStackDialog(pStackDialog); ! pStackDialog->ShowModal(); ! wxLuaHandler::GetHandler().SetStackDialog(NULL); ! pStackDialog->Destroy(); ! ! return 0; ! } ! ! // --------------------------------------------------------------------------- ! // LuaHandler - routes commands from the wxLuaHandler to the app ! // --------------------------------------------------------------------------- ! ! class LuaHandler : public wxLuaHandler ! { ! public: ! LuaHandler(wxLuaStandaloneApp *app) : m_app(app) {} ! ! virtual void AddPendingEvent(wxEvent& event) { m_app->AddPendingEvent(event); } ! virtual bool ProcessEvent(wxEvent& event) { return m_app->ProcessEvent(event); } ! virtual void DisplayError(const wxString &strError) const { m_app->DisplayError(strError); } ! ! wxLuaStandaloneApp *m_app; ! }; ! ! // --------------------------------------------------------------------------- ! // wxLuaException - exception handler for linux ! // --------------------------------------------------------------------------- ! ! #ifndef __WXMSW__ ! class wxLuaException ! { ! public: ! // constructors ! wxLuaException(int nReturnCode) : m_nReturnCode(nReturnCode) {} ! wxLuaException(const wxLuaException &e) : m_nReturnCode(e.m_nReturnCode) {} ! ! private: ! wxLuaException& operator=(const wxLuaException& e); ! ! private: ! int m_nReturnCode; ! }; ! #endif // __WXMSW__ // --------------------------------------------------------------------------- --- 41,47 ---- // Declare the binding initialization functions as extern so we don't have to // #include the binding header for simplicity. ! extern bool wxLuaBinding_wx_init(); // modules/wxbind ! extern bool wxLuaBinding_wxstc_init(); // modules/wxstcbind ! extern bool wxLuaBinding_wxluasocket_init(); // modules/wxluasocket // --------------------------------------------------------------------------- *************** *** 139,153 **** EVT_LUA_PRINT (wxID_ANY, wxLuaStandaloneApp::OnLua) EVT_LUA_ERROR (wxID_ANY, wxLuaStandaloneApp::OnLua) ! EVT_LUA_DEBUG_HOOK (wxID_ANY, wxLuaStandaloneApp::OnLua) ! ! EVT_WXLUA_DEBUGGER_STACK_ENUM( wxLuaStandaloneApp::OnDebugStackEnum) ! EVT_WXLUA_DEBUGGER_STACK_ENTRY_ENUM(wxLuaStandaloneApp::OnDebugStackEntryEnum) ! EVT_WXLUA_DEBUGGER_TABLE_ENUM( wxLuaStandaloneApp::OnDebugTableEnum) END_EVENT_TABLE() bool wxLuaStandaloneApp::OnInit() { ! m_luaHandler = NULL; ! m_pConsole = NULL; m_fMemoryBitmapAdded = false; m_pDebugTarget = NULL; --- 81,90 ---- EVT_LUA_PRINT (wxID_ANY, wxLuaStandaloneApp::OnLua) EVT_LUA_ERROR (wxID_ANY, wxLuaStandaloneApp::OnLua) ! //EVT_LUA_DEBUG_HOOK (wxID_ANY, wxLuaStandaloneApp::OnLua) END_EVENT_TABLE() bool wxLuaStandaloneApp::OnInit() { ! m_luaConsole = NULL; m_fMemoryBitmapAdded = false; m_pDebugTarget = NULL; *************** *** 195,203 **** return false; - m_luaHandler = new LuaHandler(this); - - // add our wxLuaStackDialog function - m_wxlState.RegisterFunction(wxLua_lua_stackDialog, "wxLuaStackDialog"); - wxCmdLineParser parser(cmdLineDesc, argc, argv); --- 132,135 ---- *************** *** 215,219 **** if (parser.Found(wxT("d"), &value)) { ! // wxLuaDebuggerServer::StartClient() runs wxExecute(m_programName -d[host]:[port], ...) // Set up for debugging --- 147,151 ---- if (parser.Found(wxT("d"), &value)) { ! // Note: wxLuaDebuggerServer::StartClient() runs wxExecute(m_programName -d[host]:[port], ...) // Set up for debugging *************** *** 291,295 **** } ! return (m_pConsole != NULL) || fOk; } --- 223,227 ---- } ! return (m_luaConsole != NULL) || fOk; } *************** *** 309,313 **** m_wxlState.CloseLuaState(true); m_wxlState.Destroy(); - delete m_luaHandler; wxSafeYield(); // make sure windows get destroyed --- 241,244 ---- *************** *** 335,340 **** else { ! if (m_pConsole != NULL) ! m_pConsole->DisplayText(errorStr, true); else #ifdef __WXMSW__ --- 266,271 ---- else { ! if (m_luaConsole != NULL) ! m_luaConsole->DisplayText(errorStr, true); else #ifdef __WXMSW__ *************** *** 396,401 **** if (event.GetEventType() == wxEVT_LUA_PRINT) { ! if (m_pConsole != NULL) ! m_pConsole->DisplayText(event.GetString()); else #ifdef __WXMSW__ --- 327,332 ---- if (event.GetEventType() == wxEVT_LUA_PRINT) { ! if (m_luaConsole != NULL) ! m_luaConsole->DisplayText(event.GetString()); else #ifdef __WXMSW__ *************** *** 410,435 **** } } - - void wxLuaStandaloneApp::OnDebugStackEnum(wxLuaDebuggerEvent &event) - { - if (wxLuaHandler::GetHandler().GetStackDialog() != NULL) - wxLuaHandler::GetHandler().GetStackDialog()->FillStackCombobox(event.GetDebugData()); - else - event.Skip(); - } - - void wxLuaStandaloneApp::OnDebugStackEntryEnum(wxLuaDebuggerEvent &event) - { - if (wxLuaHandler::GetHandler().GetStackDialog() != NULL) - wxLuaHandler::GetHandler().GetStackDialog()->FillStackEntry(event.GetReference(), event.GetDebugData()); - else - event.Skip(); - } - - void wxLuaStandaloneApp::OnDebugTableEnum(wxLuaDebuggerEvent &event) - { - if (wxLuaHandler::GetHandler().GetStackDialog() != NULL) - wxLuaHandler::GetHandler().GetStackDialog()->FillTableEntry(wxTreeItemId((wxTreeItemIdValue)event.GetReference()), event.GetDebugData()); - else - event.Skip(); - } --- 341,342 ---- Index: wxlua.h =================================================================== RCS file: /cvsroot/wxlua/wxLua/apps/wxlua/src/wxlua.h,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** wxlua.h 15 Sep 2006 00:10:55 -0000 1.19 --- wxlua.h 28 Sep 2006 22:26:01 -0000 1.20 *************** *** 22,28 **** class WXDLLIMPEXP_WXLUA wxLuaEvent; - class WXDLLIMPEXP_WXLUADEBUG wxLuaStackDialog; class WXDLLIMPEXP_WXLUASOCKET wxLuaDebuggerEvent; - class LuaHandler; // ---------------------------------------------------------------------------- --- 22,26 ---- *************** *** 40,44 **** // set the lua console ! void SetLuaConsole(wxLuaConsole *pConsole) { m_pConsole = pConsole; } int RunEditor(); --- 38,42 ---- // set the lua console ! void SetLuaConsole(wxLuaConsole *pConsole) { m_luaConsole = pConsole; } int RunEditor(); *************** *** 48,59 **** void OnLua(wxLuaEvent &event); - void OnDebugStackEnum(wxLuaDebuggerEvent &event); - void OnDebugTableEnum(wxLuaDebuggerEvent &event); - void OnDebugStackEntryEnum(wxLuaDebuggerEvent &event); wxString m_programName; - LuaHandler *m_luaHandler; wxLuaState m_wxlState; ! wxLuaConsole *m_pConsole; bool m_fMemoryBitmapAdded; wxLuaDebugTarget *m_pDebugTarget; --- 46,53 ---- void OnLua(wxLuaEvent &event); wxString m_programName; wxLuaState m_wxlState; ! wxLuaConsole *m_luaConsole; bool m_fMemoryBitmapAdded; wxLuaDebugTarget *m_pDebugTarget; Index: editor.h =================================================================== RCS file: /cvsroot/wxlua/wxLua/apps/wxlua/src/editor.h,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -d -r1.21 -r1.22 *** editor.h 26 Sep 2006 05:05:55 -0000 1.21 --- editor.h 28 Sep 2006 22:26:01 -0000 1.22 *************** *** 9,14 **** extern const unsigned char wxLuaEditor[]; ! const size_t wxLuaEditor_len = 72429; ! const unsigned char wxLuaEditor[72430] = { 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 61, 45, 45, 45, 10, 45, 45, 32, 78, 97,109,101, 58, 32, 32, 32, 32, 32, 32, 32, 32, 69,100,105,116,111,114, 46,119,120, 46,108,117, 97, 10, --- 9,14 ---- extern const unsigned char wxLuaEditor[]; ! const size_t wxLuaEditor_len = 72926; ! const unsigned char wxLuaEditor[72927] = { 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 61, 45, 45, 45, 10, 45, 45, 32, 78, 97,109,101, 58, 32, 32, 32, 32, 32, 32, 32, 32, 69,100,105,116,111,114, 46,119,120, 46,108,117, 97, 10, *************** *** 272,280 **** 102,117,110, 99,116,105,111,110, 32, 85,112,100, 97,116,101, 83,116, 97,116,117,115, 84,101,120,116, 40,101,100,105,116,111,114, 41, 10, 32, 32, 32, 32,105,102, 32,101,100,105,116,111,114, 32,116,104,101,110, 10, ! 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,112,111,115, 32, 61, 32,101,100,105,116,111,114, 58, 71,101,116, 67,117,114,114,101,110,116, 80,111,115, 40, 41, 10, ! 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,114,111,119, 32, 61, 32,101,100,105,116,111,114, 58, 76,105,110,101, 70,114,111,109, 80,111,115,105,116,105,111,110, 40,112,111,115, 41, 10, ! 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32, 99,111,108, 32, 61, 32, 49, 32, 43, 32,112,111,115, 32, 45, 32,101,100,105,116,111,114, 58, 80,111,115,105,116,105,111,110, 70,114,111,109, 76,105,110,101, 40,114,111,119, 41, 10, 10, ! 32, 32, 32, 32, 32, 32, 32, 32,102,114, 97,109,101, 58, 83,101,116, 83,116, 97,116,117,115, 84,101,120,116, 40, 34, 76,110, 32, 34, 46, 46,116,111,115,116,114,105,110,103, 40,114,111,119, 32, 43, 32, 49, 41, 46, 46, 34, 32, 67,111,108, 32, 34, 46, 46,116,111,115,116,114,105,110,103, 40, 99,111,108, 41, 44, 32, 51, 41, 10, 10, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,101,100,105,116,111,114, 58, 71,101,116, 79,118,101,114,116,121,112,101, 40, 41, 32,116,104,101,110, 10, --- 272,280 ---- 102,117,110, 99,116,105,111,110, 32, 85,112,100, 97,116,101, 83,116, 97,116,117,115, 84,101,120,116, 40,101,100,105,116,111,114, 41, 10, 32, 32, 32, 32,105,102, 32,101,100,105,116,111,114, 32,116,104,101,110, 10, ! 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,112,111,115, 32, 32, 61, 32,101,100,105,116,111,114, 58, 71,101,116, 67,117,114,114,101,110,116, 80,111,115, 40, 41, 10, ! 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,108,105,110,101, 32, 61, 32,101,100,105,116,111,114, 58, 76,105,110,101, 70,114,111,109, 80,111,115,105,116,105,111,110, 40,112,111,115, 41, 10, ! 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32, 99,111,108, 32, 32, 61, 32, 49, 32, 43, 32,112,111,115, 32, 45, 32,101,100,105,116,111,114, 58, 80,111,115,105,116,105,111,110, 70,114,111,109, 76,105,110,101, 40,108,105,110,101, 41, 10, 10, ! 32, 32, 32, 32, 32, 32, 32, 32,102,114, 97,109,101, 58, 83,101,116, 83,116, 97,116,117,115, 84,101,120,116, 40, 34, 76,110, 32, 34, 46, 46,116,111,115,116,114,105,110,103, 40,108,105,110,101, 32, 43, 32, 49, 41, 46, 46, 34, 32, 67,111,108, 32, 34, 46, 46,116,111,115,116,114,105,110,103, 40, 99,111,108, 41, 44, 32, 51, 41, 10, 10, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,101,100,105,116,111,114, 58, 71,101,116, 79,118,101,114,116,121,112,101, 40, 41, 32,116,104,101,110, 10, *************** *** 1212,1216 **** 32, 32, 32, 32, 32, 32, 32, 32,102, 72, 97,118,101, 70,111,117,110,100, 32, 61, 32,110,105,108, 10, 10, ! 32, 32, 32, 32, 32, 32, 32,102,114, 97,109,101, 58, 83,101,116, 83,116, 97,116,117,115, 84,101,120,116, 40, 34, 78,111,116, 32,102,111,117,110,100, 46, 34, 41, 10, 32, 32, 32, 32,101,108,115,101, 10, 32, 32, 32, 32, 32, 32, 32, 32,102, 72, 97,118,101, 70,111,117,110,100, 32, 61, 32, 49, 10, --- 1212,1216 ---- 32, 32, 32, 32, 32, 32, 32, 32,102, 72, 97,118,101, 70,111,117,110,100, 32, 61, 32,110,105,108, 10, 10, ! 32, 32, 32, 32, 32, 32, 32,102,114, 97,109,101, 58, 83,101,116, 83,116, 97,116,117,115, 84,101,120,116, 40, 34, 70,105,110,100, 32,116,101,120,116, 32,110,111,116, 32,102,111,117,110,100, 46, 34, 41, 10, 32, 32, 32, 32,101,108,115,101, 10, 32, 32, 32, 32, 32, 32, 32, 32,102, 72, 97,118,101, 70,111,117,110,100, 32, 61, 32, 49, 10, *************** *** 1447,1452 **** 101,110,100, 10, 10, ! 102,117,110, 99,116,105,111,110, 32, 84,111,103,103,108,101, 68,101, 98,117,103, 77, 97,114,107,101,114, 40,101,100,105,116,111,114, 44, 32,114,111,119, 41, 10, ! 32, 32, 32, 32,108,111, 99, 97,108, 32,109, 97,114,107,101,114,115, 32, 61, 32,101,100,105,116,111,114, 58, 77, 97,114,107,101,114, 71,101,116, 40,114,111,119, 41, 10, 32, 32, 32, 32,105,102, 32,109, 97,114,107,101,114,115, 32, 62, 61, 32, 67, 85, 82, 82, 69, 78, 84, 95, 76, 73, 78, 69, 95, 77, 65, 82, 75, 69, 82, 95, 86, 65, 76, 85, 69, 32,116,104,101,110, 10, 32, 32, 32, 32, 32, 32, 32, 32,109, 97,114,107,101,114,115, 32, 61, 32,109, 97,114,107,101,114,115, 32, 45, 32, 67, 85, 82, 82, 69, 78, 84, 95, 76, 73, 78, 69, 95, 77, 65, 82, 75, 69, 82, 95, 86, 65, 76, 85, 69, 10, --- 1447,1452 ---- 101,110,100, 10, 10, ! 102,117,110, 99,116,105,111,110, 32, 84,111,103,103,108,101, 68,101, 98,117,103, 77, 97,114,107,101,114, 40,101,100,105,116,111,114, 44, 32,108,105,110,101, 41, 10, ! 32, 32, 32, 32,108,111, 99, 97,108, 32,109, 97,114,107,101,114,115, 32, 61, 32,101,100,105,116,111,114, 58, 77, 97,114,107,101,114, 71,101,116, 40,108,105,110,101, 41, 10, 32, 32, 32, 32,105,102, 32,109, 97,114,107,101,114,115, 32, 62, 61, 32, 67, 85, 82, 82, 69, 78, 84, 95, 76, 73, 78, 69, 95, 77, 65, 82, 75, 69, 82, 95, 86, 65, 76, 85, 69, 32,116,104,101,110, 10, 32, 32, 32, 32, 32, 32, 32, 32,109, 97,114,107,101,114,115, 32, 61, 32,109, 97,114,107,101,114,115, 32, 45, 32, 67, 85, 82, 82, 69, 78, 84, 95, 76, 73, 78, 69, 95, 77, 65, 82, 75, 69, 82, 95, 86, 65, 76, 85, 69, 10, *************** *** 1455,1476 **** 32, 32, 32, 32,108,111, 99, 97,108, 32,102,105,108,101, 80, 97,116,104, 32, 61, 32, 77, 97,107,101, 68,101, 98,117,103, 70,105,108,101, 78, 97,109,101, 40,101,100,105,116,111,114, 44, 32,111,112,101,110, 68,111, 99,117,109,101,110,116,115, 91,105,100, 93, 46,102,105,108,101, 80, 97,116,104, 41, 10, 32, 32, 32, 32,105,102, 32,109, 97,114,107,101,114,115, 32, 62, 61, 32, 66, 82, 69, 65, 75, 80, 79, 73, 78, 84, 95, 77, 65, 82, 75, 69, 82, 95, 86, 65, 76, 85, 69, 32,116,104,101,110, 10, ! 32, 32, 32, 32, 32, 32, 32, 32,101,100,105,116,111,114, 58, 77, 97,114,107,101,114, 68,101,108,101,116,101, 40,114,111,119, 44, 32, 66, 82, 69, 65, 75, 80, 79, 73, 78, 84, 95, 77, 65, 82, 75, 69, 82, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32,116,104,101,110, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 82,101,109,111,118,101, 66,114,101, 97,107, 80,111,105,110,116, 40,102,105,108,101, 80, 97,116,104, 44, 32,114,111,119, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, 32, 32, 32, 32,101,108,115,101, 10, ! 32, 32, 32, 32, 32, 32, 32, 32,101,100,105,116,111,114, 58, 77, 97,114,107,101,114, 65,100,100, 40,114,111,119, 44, 32, 66, 82, 69, 65, 75, 80, 79, 73, 78, 84, 95, 77, 65, 82, 75, 69, 82, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32,116,104,101,110, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 65,100,100, 66,114,101, 97,107, 80,111,105,110,116, 40,102,105,108,101, 80, 97,116,104, 44, 32,114,111,119, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, 32, 32, 32, 32,101,110,100, 10, 101,110,100, 10, 10, 102,114, 97,109,101, 58, 67,111,110,110,101, 99,116, 40, 73, 68, 95, 84, 79, 71, 71, 76, 69, 66, 82, 69, 65, 75, 80, 79, 73, 78, 84, 44, 32,119,120, 46,119,120, 69, 86, 84, 95, 67, 79, 77, 77, 65, 78, 68, 95, 77, 69, 78, 85, 95, 83, 69, 76, 69, 67, 84, 69, 68, 44, 10, 32, 32, 32, 32, 32, 32, 32, 32,102,117,110, 99,116,105,111,110, 32, 40,101,118,101,110,116, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,101,100,105,116,111,114, 32, 61, 32, 71,101,116, 69,100,105,116,111,114, 40, 41, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,112,111,115, 32, 61, 32,101,100,105,116,111,114, 58, 71,101,116, 67,117,114,114,101,110,116, 80,111,115, 40, 41, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,114,111,119, 32, 61, 32,101,100,105,116,111,114, 58, 76,105,110,101, 70,114,111,109, 80,111,115,105,116,105,111,110, 40,112,111,115, 41, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 84,111,103,103,108,101, 68,101, 98,117,103, 77, 97,114,107,101,114, 40,101,100,105,116,111,114, 44, 32,114,111,119, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 41, 10, 102,114, 97,109,101, 58, 67,111,110,110,101, 99,116, 40, 73, 68, 95, 84, 79, 71, 71, 76, 69, 66, 82, 69, 65, 75, 80, 79, 73, 78, 84, 44, 32,119,120, 46,119,120, 69, 86, 84, 95, 85, 80, 68, 65, 84, 69, 95, 85, 73, 44, 32, 79,110, 85,112,100, 97,116,101, 85, 73, 69,100,105,116, 77,101,110,117, 41, 10, --- 1455,1485 ---- 32, 32, 32, 32,108,111, 99, 97,108, 32,102,105,108,101, 80, 97,116,104, 32, 61, 32, 77, 97,107,101, 68,101, 98,117,103, 70,105,108,101, 78, 97,109,101, 40,101,100,105,116,111,114, 44, 32,111,112,101,110, 68,111, 99,117,109,101,110,116,115, 91,105,100, 93, 46,102,105,108,101, 80, 97,116,104, 41, 10, 32, 32, 32, 32,105,102, 32,109, 97,114,107,101,114,115, 32, 62, 61, 32, 66, 82, 69, 65, 75, 80, 79, 73, 78, 84, 95, 77, 65, 82, 75, 69, 82, 95, 86, 65, 76, 85, 69, 32,116,104,101,110, 10, ! 32, 32, 32, 32, 32, 32, 32, 32,101,100,105,116,111,114, 58, 77, 97,114,107,101,114, 68,101,108,101,116,101, 40,108,105,110,101, 44, 32, 66, 82, 69, 65, 75, 80, 79, 73, 78, 84, 95, 77, 65, 82, 75, 69, 82, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32,116,104,101,110, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 82,101,109,111,118,101, 66,114,101, 97,107, 80,111,105,110,116, 40,102,105,108,101, 80, 97,116,104, 44, 32,108,105,110,101, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, 32, 32, 32, 32,101,108,115,101, 10, ! 32, 32, 32, 32, 32, 32, 32, 32,101,100,105,116,111,114, 58, 77, 97,114,107,101,114, 65,100,100, 40,108,105,110,101, 44, 32, 66, 82, 69, 65, 75, 80, 79, 73, 78, 84, 95, 77, 65, 82, 75, 69, 82, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32,116,104,101,110, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 65,100,100, 66,114,101, 97,107, 80,111,105,110,116, 40,102,105,108,101, 80, 97,116,104, 44, 32,108,105,110,101, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, 32, 32, 32, 32,101,110,100, 10, 101,110,100, 10, 10, + 102,117,110, 99,116,105,111,110, 32, 68,105,115,112,108, 97,121, 79,117,116,112,117,116, 40,109,101,115,115, 97,103,101, 41, 10, + 32, 32, 32, 32,105,102, 32,115,112,108,105,116,116,101,114, 58, 73,115, 83,112,108,105,116, 40, 41, 32, 61, 61, 32,102, 97,108,115,101, 32,116,104,101,110, 10, + 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,120, 44, 32,121, 32, 61, 32,102,114, 97,109,101, 58, 71,101,116, 67,108,105,101,110,116, 83,105,122,101, 40, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32,115,112,108,105,116,116,101,114, 58, 83,112,108,105,116, 72,111,114,105,122,111,110,116, 97,108,108,121, 40,110,111,116,101, 98,111,111,107, 44, 32,101,114,114,111,114, 76,111,103, 44, 32, 40, 50, 32, 42, 32,121, 41, 32, 47, 32, 51, 41, 10, + 32, 32, 32, 32,101,110,100, 10, + 32, 32, 32, 32,101,114,114,111,114, 76,111,103, 58, 83,101,116, 82,101, 97,100, 79,110,108,121, 40,102, 97,108,115,101, 41, 10, + 32, 32, 32, 32,101,114,114,111,114, 76,111,103, 58, 65,100,100, 84,101,120,116, 40,109,101,115,115, 97,103,101, 41, 10, + 32, 32, 32, 32,101,114,114,111,114, 76,111,103, 58, 83,101,116, 82,101, 97,100, 79,110,108,121, 40,116,114,117,101, 41, 10, + 101,110,100, 10, + 10, 102,114, 97,109,101, 58, 67,111,110,110,101, 99,116, 40, 73, 68, 95, 84, 79, 71, 71, 76, 69, 66, 82, 69, 65, 75, 80, 79, 73, 78, 84, 44, 32,119,120, 46,119,120, 69, 86, 84, 95, 67, 79, 77, 77, 65, 78, 68, 95, 77, 69, 78, 85, 95, 83, 69, 76, 69, 67, 84, 69, 68, 44, 10, 32, 32, 32, 32, 32, 32, 32, 32,102,117,110, 99,116,105,111,110, 32, 40,101,118,101,110,116, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,101,100,105,116,111,114, 32, 61, 32, 71,101,116, 69,100,105,116,111,114, 40, 41, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,108,105,110,101, 32, 61, 32,101,100,105,116,111,114, 58, 76,105,110,101, 70,114,111,109, 80,111,115,105,116,105,111,110, 40,101,100,105,116,111,114, 58, 71,101,116, 67,117,114,114,101,110,116, 80,111,115, 40, 41, 41, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 84,111,103,103,108,101, 68,101, 98,117,103, 77, 97,114,107,101,114, 40,101,100,105,116,111,114, 44, 32,108,105,110,101, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 41, 10, 102,114, 97,109,101, 58, 67,111,110,110,101, 99,116, 40, 73, 68, 95, 84, 79, 71, 71, 76, 69, 66, 82, 69, 65, 75, 80, 79, 73, 78, 84, 44, 32,119,120, 46,119,120, 69, 86, 84, 95, 85, 80, 68, 65, 84, 69, 95, 85, 73, 44, 32, 79,110, 85,112,100, 97,116,101, 85, 73, 69,100,105,116, 77,101,110,117, 41, 10, *************** *** 1482,1486 **** 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,105,100, 32, 32, 32, 32, 32, 32, 32, 32, 32, 61, 32,101,100,105,116,111,114, 58, 71,101,116, 73,100, 40, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,102,105,108,101, 80, 97,116,104, 32, 32, 32, 61, 32, 77, 97,107,101, 68,101, 98,117,103, 70,105,108,101, 78, 97,109,101, 40,101,100,105,116,111,114, 44, 32,111,112,101,110, 68,111, 99,117,109,101,110,116,115, 91,105,100, 93, 46,102,105,108,101, 80, 97,116,104, 41, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,119,120, 46,119,120, 76,117, 97, 68,101, 98,117,103,103,101,114, 83,101,114,118,101,114, 67,111,109,112,105,108,101, 40,102,105,108,101, 80, 97,116,104, 44, 32,101,100,105,116,111,114, 84,101,120,116, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 41, 10, 102,114, 97,109,101, 58, 67,111,110,110,101, 99,116, 40, 73, 68, 95, 67, 79, 77, 80, 73, 76, 69, 44, 32,119,120, 46,119,120, 69, 86, 84, 95, 85, 80, 68, 65, 84, 69, 95, 85, 73, 44, 32, 79,110, 85,112,100, 97,116,101, 85, 73, 69,100,105,116, 77,101,110,117, 41, 10, --- 1491,1501 ---- 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,105,100, 32, 32, 32, 32, 32, 32, 32, 32, 32, 61, 32,101,100,105,116,111,114, 58, 71,101,116, 73,100, 40, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,102,105,108,101, 80, 97,116,104, 32, 32, 32, 61, 32, 77, 97,107,101, 68,101, 98,117,103, 70,105,108,101, 78, 97,109,101, 40,101,100,105,116,111,114, 44, 32,111,112,101,110, 68,111, 99,117,109,101,110,116,115, 91,105,100, 93, 46,102,105,108,101, 80, 97,116,104, 41, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,114,101,116, 44, 32,101,114,114, 77,115,103, 44, 32,108,105,110,101, 95,110,117,109, 32, 61, 32,119,120, 46, 67,111,109,112,105,108,101, 76,117, 97, 83, 99,114,105,112,116, 40,101,100,105,116,111,114, 84,101,120,116, 44, 32,102,105,108,101, 80, 97,116,104, 41, 10, ! 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,108,105,110,101, 95,110,117,109, 32, 62, 32, 45, 49, 32,116,104,101,110, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 68,105,115,112,108, 97,121, 79,117,116,112,117,116, 40, 34, 67,111,109,112,108,105, 97,116,105,111,110, 32,101,114,114,111,114, 32,111,110, 32,108,105,110,101, 32,110,117,109, 98,101,114, 32, 58, 34, 46, 46,116,111,115,116,114,105,110,103, 40,108,105,110,101, 95,110,117,109, 41, 46, 46, 34, 92,110, 34, 41, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,100,105,116,111,114, 58, 71,111,116,111, 76,105,110,101, 40,108,105,110,101, 95,110,117,109, 45, 49, 41, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 68,105,115,112,108, 97,121, 79,117,116,112,117,116, 40,101,114,114, 77,115,103, 46, 46, 34, 92,110, 34, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 41, 10, 102,114, 97,109,101, 58, 67,111,110,110,101, 99,116, 40, 73, 68, 95, 67, 79, 77, 80, 73, 76, 69, 44, 32,119,120, 46,119,120, 69, 86, 84, 95, 85, 80, 68, 65, 84, 69, 95, 85, 73, 44, 32, 79,110, 85,112,100, 97,116,101, 85, 73, 69,100,105,116, 77,101,110,117, 41, 10, *************** *** 1533,1539 **** 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 41, 10, 10, 102,114, 97,109,101, 58, 67,111,110,110,101, 99,116, 40, 73, 68, 95, 83, 84, 65, 82, 84, 95, 68, 69, 66, 85, 71, 44, 32,119,120, 46,119,120, 69, 86, 84, 95, 67, 79, 77, 77, 65, 78, 68, 95, 77, 69, 78, 85, 95, 83, 69, 76, 69, 67, 84, 69, 68, 44, 10, 32, 32, 32, 32, 32, 32, 32, 32,102,117,110, 99,116,105,111,110, 32, 40,101,118,101,110,116, 41, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32, 61, 32,119,120, 46,119,120, 76,117, 97, 68,101, 98,117,103,103,101,114, 83,101,114,118,101,114, 40,112,111,114,116, 78,117,109, 98,101,114, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32,116,104,101,110, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 83,116, 97,114,116, 67,108,105,101,110,116, 40, 41, 10, --- 1548,1702 ---- 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 41, 10, 10, + 102,117,110, 99,116,105,111,110, 32, 67,114,101, 97,116,101, 68,101, 98,117,103, 83,101,114,118,101,114, 40, 41, 10, + 32, 32, 32, 32,108,111, 99, 97,108, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32, 61, 32,119,120, 46,119,120, 76,117, 97, 68,101, 98,117,103,103,101,114, 83,101,114,118,101,114, 40,112,111,114,116, 78,117,109, 98,101,114, 41, 10, + 32, 32, 32, 32,105,102, 32,110,111,116, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32,116,104,101,110, 32,114,101,116,117,114,110, 32,110,105,108, 32,101,110,100, 10, + 10, + 32, 32, 32, 32,102,117,110, 99,116,105,111,110, 32, 68,111,119,110,108,111, 97,100, 66,114,101, 97,107,112,111,105,110,116,115, 40,101,100,105,116,111,114, 44, 32,102,105,108,101, 78, 97,109,101, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,110,101,120,116, 76,105,110,101, 32, 61, 32,101,100,105,116,111,114, 58, 77, 97,114,107,101,114, 78,101,120,116, 40, 48, 44, 32, 66, 82, 69, 65, 75, 80, 79, 73, 78, 84, 95, 77, 65, 82, 75, 69, 82, 95, 86, 65, 76, 85, 69, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32,119,104,105,108,101, 32,110,101,120,116, 76,105,110,101, 32,126, 61, 32, 45, 49, 32,100,111, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 65,100,100, 66,114,101, 97,107, 80,111,105,110,116, 40,102,105,108,101, 78, 97,109,101, 44, 32,110,101,120,116, 76,105,110,101, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,110,101,120,116, 76,105,110,101, 32, 61, 32,101,100,105,116,111,114, 58, 77, 97,114,107,101,114, 78,101,120,116, 40,110,101,120,116, 76,105,110,101, 32, 43, 32, 49, 44, 32, 66, 82, 69, 65, 75, 80, 79, 73, 78, 84, 95, 77, 65, 82, 75, 69, 82, 95, 86, 65, 76, 85, 69, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, + 32, 32, 32, 32,101,110,100, 10, + 10, + 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 67,111,110,110,101, 99,116, 40,119,120, 46,119,120, 73, 68, 95, 65, 78, 89, 44, 32,119,120, 46,119,120, 69, 86, 84, 95, 87, 88, 76, 85, 65, 95, 68, 69, 66, 85, 71, 71, 69, 82, 95, 67, 76, 73, 69, 78, 84, 95, 67, 79, 78, 78, 69, 67, 84, 69, 68, 44, 10, + 32, 32, 32, 32, 32, 32, 32, 32,102,117,110, 99,116,105,111,110, 32, 40,101,118,101,110,116, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32,116,104,101,110, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,102,111,114, 32,105,100, 44, 32,100,111, 99,117,109,101,110,116, 32,105,110, 32,112, 97,105,114,115, 40,111,112,101,110, 68,111, 99,117,109,101,110,116,115, 41, 32,100,111, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,101,100,105,116,111,114, 32, 32, 32, 32, 32, 61, 32,100,111, 99,117,109,101,110,116, 46,101,100,105,116,111,114, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,101,100,105,116,111,114, 84,101,120,116, 32, 61, 32,101,100,105,116,111,114, 58, 71,101,116, 84,101,120,116, 40, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,102,105,108,101, 80, 97,116,104, 32, 32, 32, 61, 32, 77, 97,107,101, 68,101, 98,117,103, 70,105,108,101, 78, 97,109,101, 40,101,100,105,116,111,114, 44, 32,100,111, 99,117,109,101,110,116, 46,102,105,108,101, 80, 97,116,104, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 82,117,110, 40,102,105,108,101, 80, 97,116,104, 44, 32,101,100,105,116,111,114, 84,101,120,116, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 68,111,119,110,108,111, 97,100, 66,114,101, 97,107,112,111,105,110,116,115, 40,101,100,105,116,111,114, 44, 32,102,105,108,101, 80, 97,116,104, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,102, 73,115, 67,111,110,110,101, 99,116,101,100, 32, 61, 32, 49, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 83,116,101,112, 40, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,102, 73,115, 82,117,110,110,105,110,103, 32, 61, 32, 49, 10, + 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 85,112,100, 97,116,101, 85, 73, 77,101,110,117, 73,116,101,109,115, 40, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 68,105,115,112,108, 97,121, 79,117,116,112,117,116, 40, 34, 67,108,105,101,110,116, 32, 99,111,110,110,101, 99,116,101,100, 92,110, 34, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 41, 10, + 10, + 32, 32, 32, 32,102,117,110, 99,116,105,111,110, 32, 68,101, 98,117,103,103,101,114, 73,103,110,111,114,101, 70,105,108,101, 40,102,105,108,101, 78, 97,109,101, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32,105,103,110,111,114,101, 70,108, 97,103, 32, 61, 32,110,105,108, 10, + 32, 32, 32, 32, 32, 32, 32, 32,102,111,114, 32,105,100,120, 44, 32,105,103,110,111,114,101, 70,105,108,101, 32,105,110, 32,112, 97,105,114,115, 40,105,103,110,111,114,101,100, 70,105,108,101,115, 76,105,115,116, 41, 32,100,111, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,115,116,114,105,110,103, 46,117,112,112,101,114, 40,105,103,110,111,114,101, 70,105,108,101, 41, 32, 61, 61, 32,115,116,114,105,110,103, 46,117,112,112,101,114, 40,102,105,108,101, 78, 97,109,101, 41, 32,116,104,101,110, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,103,110,111,114,101, 70,108, 97,103, 32, 61, 32, 49, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, + 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, + 32, 32, 32, 32, 32, 32, 32, 32,114,101,116,117,114,110, 32,105,103,110,111,114,101, 70,108, 97,103, 10, + 32, 32, 32, 32,101,110,100, 10, + 10, + 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 67,111,110,110,101, 99,116, 40,119,120, 46,119,120, 73, 68, 95, 65, 78, 89, 44, 32,119,120, 46,119,120, 69, 86, 84, 95, 87, 88, 76, 85, 65, 95, 68, 69, 66, 85, 71, 71, 69, 82, 95, 66, 82, 69, 65, 75, 44, 10, + 32, 32, 32, 32, 32, 32, 32, 32,102,117,110, 99,116,105,111,110, 32, 40,101,118,101,110,116, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,101,120,105,116,105,110,103, 80,114,111,103,114, 97,109, 32,116,104,101,110, 32,114,101,116,117,114,110, 32,101,110,100, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,108,105,110,101, 32, 61, 32,101,118,101,110,116, 58, 71,101,116, 76,105,110,101, 78,117,109, 98,101,114, 40, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,101,118,101,110,116, 70,105,108,101, 78, 97,109,101, 32, 61, 32,101,118,101,110,116, 58, 71,101,116, 70,105,108,101, 78, 97,109,101, 40, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,115,116,114,105,110,103, 46,115,117, 98, 40,101,118,101,110,116, 70,105,108,101, 78, 97,109,101, 44, 32, 49, 44, 32, 49, 41, 32, 61, 61, 32, 39, 64, 39, 32,116,104,101,110, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,118,101,110,116, 70,105,108,101, 78, 97,109,101, 32, 61, 32,115,116,114,105,110,103, 46,115,117, 98, 40,101,118,101,110,116, 70,105,108,101, 78, 97,109,101, 44, 32, 50, 44, 32, 45, 49, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,119,120, 46,119,120, 73,115, 65, 98,115,111,108,117,116,101, 80, 97,116,104, 40,101,118,101,110,116, 70,105,108,101, 78, 97,109,101, 41, 32, 61, 61, 32,102, 97,108,115,101, 32,116,104,101,110, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,118,101,110,116, 70,105,108,101, 78, 97,109,101, 32, 61, 32,119,120, 46,119,120, 71,101,116, 67,119,100, 40, 41, 46, 46, 34, 47, 34, 46, 46,101,118,101,110,116, 70,105,108,101, 78, 97,109,101, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,119,120, 46,119,120, 80,108, 97,116,102,111,114,109, 87,105,110,100,111,119,115, 32,116,104,101,110, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,118,101,110,116, 70,105,108,101, 78, 97,109,101, 32, 61, 32,119,120, 46,119,120, 85,110,105,120, 50, 68,111,115, 70,105,108,101,110, 97,109,101, 40,101,118,101,110,116, 70,105,108,101, 78, 97,109,101, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,102,105,108,101, 70,111,117,110,100, 32, 61, 32,102, 97,108,115,101, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 68,105,115,112,108, 97,121, 79,117,116,112,117,116, 40, 34, 65,116, 32, 66,114,101, 97,107,112,111,105,110,116, 32,108,105,110,101, 58, 32, 34, 46, 46,116,111,115,116,114,105,110,103, 40,108,105,110,101, 41, 46, 46, 34, 32,102,105,108,101, 58, 32, 34, 46, 46,101,118,101,110,116, 70,105,108,101, 78, 97,109,101, 46, 46, 34, 92,110, 34, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,102,111,114, 32,105,100, 44, 32,100,111, 99,117,109,101,110,116, 32,105,110, 32,112, 97,105,114,115, 40,111,112,101,110, 68,111, 99,117,109,101,110,116,115, 41, 32,100,111, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,101,100,105,116,111,114, 32, 32, 32, 61, 32,100,111, 99,117,109,101,110,116, 46,101,100,105,116,111,114, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,102,105,108,101, 80, 97,116,104, 32, 61, 32, 77, 97,107,101, 68,101, 98,117,103, 70,105,108,101, 78, 97,109,101, 40,101,100,105,116,111,114, 44, 32,100,111, 99,117,109,101,110,116, 46,102,105,108,101, 80, 97,116,104, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32,102,111,114, 32,114,117,110,110,105,110,103, 32,105,110, 32, 99,121,103,119,105,110, 44, 32,117,115,101, 32,115, 97,109,101, 32,116,121,112,101, 32,111,102, 32,115,101,112, 97,114, 97,116,111,114,115, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,102,105,108,101, 80, 97,116,104, 32, 61, 32,115,116,114,105,110,103, 46,103,115,117, 98, 40,102,105,108,101, 80, 97,116,104, 44, 32, 34, 92, 92, 34, 44, 32, 34, 47, 34, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,101,118,101,110,116, 70,105,108,101, 78, 97,109,101, 95, 32, 61, 32,115,116,114,105,110,103, 46,103,115,117, 98, 40,101,118,101,110,116, 70,105,108,101, 78, 97,109,101, 44, 32, 34, 92, 92, 34, 44, 32, 34, 47, 34, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,115,116,114,105,110,103, 46,117,112,112,101,114, 40,102,105,108,101, 80, 97,116,104, 41, 32, 61, 61, 32,115,116,114,105,110,103, 46,117,112,112,101,114, 40,101,118,101,110,116, 70,105,108,101, 78, 97,109,101, 95, 41, 32,116,104,101,110, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,115,101,108,101, 99,116,105,111,110, 32, 61, 32,100,111, 99,117,109,101,110,116, 46,105,110,100,101,120, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,110,111,116,101, 98,111,111,107, 58, 83,101,116, 83,101,108,101, 99,116,105,111,110, 40,115,101,108,101, 99,116,105,111,110, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 83,101,116, 69,100,105,116,111,114, 83,101,108,101, 99,116,105,111,110, 40,115,101,108,101, 99,116,105,111,110, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,100,105,116,111,114, 58, 77, 97,114,107,101,114, 65,100,100, 40,108,105,110,101, 44, 32, 67, 85, 82, 82, 69, 78, 84, 95, 76, 73, 78, 69, 95, 77, 65, 82, 75, 69, 82, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,100,105,116,111,114, 58, 69,110,115,117,114,101, 86,105,115,105, 98,108,101, 69,110,102,111,114, 99,101, 80,111,108,105, 99,121, 40,108,105,110,101, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,102,105,108,101, 70,111,117,110,100, 32, 61, 32,116,114,117,101, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 98,114,101, 97,107, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,110,111,116, 32, 68,101, 98,117,103,103,101,114, 73,103,110,111,114,101, 70,105,108,101, 40,101,118,101,110,116, 70,105,108,101, 78, 97,109,101, 41, 32,116,104,101,110, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,110,111,116, 32,102,105,108,101, 70,111,117,110,100, 32,116,104,101,110, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,102,105,108,101, 68,105, 97,108,111,103, 32, 61, 32,119,120, 46,119,120, 70,105,108,101, 68,105, 97,108,111,103, 40,102,114, 97,109,101, 44, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 34, 83,101,108,101, 99,116, 32,102,105,108,101, 32,102,111,114, 32,100,101, 98,117,103,103,105,110,103, 34, 44, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 34, 34, 44, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,118,101,110,116, 70,105,108,101, 78, 97,109,101, 44, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 34, 76,117, 97, 32,102,105,108,101,115, 32, 40, 42, 46,108,117, 97, 41,124, 42, 46,108,117, 97,124, 84,101,120,116, 32,102,105,108,101,115, 32, 40, 42, 46,116,120,116, 41,124, 42, 46,116,120,116,124, 65,108,108, 32,102,105,108,101,115, 32, 40, 42, 41,124, 42, 34, 44, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,119,120, 46,119,120, 79, 80, 69, 78, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,102,105,108,101, 68,105, 97,108,111,103, 58, 83,104,111,119, 77,111,100, 97,108, 40, 41, 32, 61, 61, 32,119,120, 46,119,120, 73, 68, 95, 79, 75, 32,116,104,101,110, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,101,100,105,116,111,114, 32, 61, 32, 76,111, 97,100, 70,105,108,101, 40,102,105,108,101, 68,105, 97,108,111,103, 58, 71,101,116, 80, 97,116,104, 40, 41, 44, 32,102,105,108,101, 68,105, 97,108,111,103, 58, 71,101,116, 70,105,108,101,110, 97,109,101, 40, 41, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,101,100,105,116,111,114, 32,116,104,101,110, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,100,105,116,111,114, 58, 77, 97,114,107,101,114, 65,100,100, 40,108,105,110,101, 44, 32, 67, 85, 82, 82, 69, 78, 84, 95, 76, 73, 78, 69, 95, 77, 65, 82, 75, 69, 82, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,100,105,116,111,114, 58, 69,110,115,117,114,101, 86,105,115,105, 98,108,101, 69,110,102,111,114, 99,101, 80,111,108,105, 99,121, 40,108,105,110,101, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,100,105,116,111,114, 58, 83,101,116, 82,101, 97,100, 79,110,108,121, 40,116,114,117,101, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,102,105,108,101, 70,111,117,110,100, 32, 61, 32,116,114,117,101, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,102,105,108,101, 68,105, 97,108,111,103, 58, 68,101,115,116,114,111,121, 40, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,110,111,116, 32,102,105,108,101, 70,111,117,110,100, 32,116,104,101,110, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,116, 97, 98,108,101, 46,105,110,115,101,114,116, 40,105,103,110,111,114,101,100, 70,105,108,101,115, 76,105,115,116, 44, 32,101,118,101,110,116, 70,105,108,101, 78, 97,109,101, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, + 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,102,105,108,101, 70,111,117,110,100, 32,116,104,101,110, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,102, 73,115, 82,117,110,110,105,110,103, 32, 61, 32,110,105,108, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 80,114,111, 99,101,115,115, 87, 97,116, 99,104,101,115, 40, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,108,115,101,105,102, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32,116,104,101,110, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 67,111,110,116,105,110,117,101, 40, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,102, 73,115, 82,117,110,110,105,110,103, 32, 61, 32, 49, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, + 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 41, 10, + 10, + 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 67,111,110,110,101, 99,116, 40,119,120, 46,119,120, 73, 68, 95, 65, 78, 89, 44, 32,119,120, 46,119,120, 69, 86, 84, 95, 87, 88, 76, 85, 65, 95, 68, 69, 66, 85, 71, 71, 69, 82, 95, 80, 82, 73, 78, 84, 44, 10, + 32, 32, 32, 32, 32, 32, 32, 32,102,117,110, 99,116,105,111,110, 32, 40,101,118,101,110,116, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 68,105,115,112,108, 97,121, 79,117,116,112,117,116, 40,101,118,101,110,116, 58, 71,101,116, 77,101,115,115, 97,103,101, 40, 41, 46, 46, 34, 92,110, 34, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 41, 10, + 10, + 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 67,111,110,110,101, 99,116, 40,119,120, 46,119,120, 73, 68, 95, 65, 78, 89, 44, 32,119,120, 46,119,120, 69, 86, 84, 95, 87, 88, 76, 85, 65, 95, 68, 69, 66, 85, 71, 71, 69, 82, 95, 69, 82, 82, 79, 82, 44, 10, + 32, 32, 32, 32, 32, 32, 32, 32,102,117,110, 99,116,105,111,110, 32, 40,101,118,101,110,116, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 68,105,115,112,108, 97,121, 79,117,116,112,117,116, 40, 34,119,120, 76,117, 97, 32, 69, 82, 82, 79, 82, 58, 32, 34, 46, 46,101,118,101,110,116, 58, 71,101,116, 77,101,115,115, 97,103,101, 40, 41, 46, 46, 34, 92,110, 34, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 41, 10, + 10, + 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 67,111,110,110,101, 99,116, 40,119,120, 46,119,120, 73, 68, 95, 65, 78, 89, 44, 32,119,120, 46,119,120, 69, 86, 84, 95, 87, 88, 76, 85, 65, 95, 68, 69, 66, 85, 71, 71, 69, 82, 95, 69, 88, 73, 84, 44, 10, + 32, 32, 32, 32, 32, 32, 32, 32,102,117,110, 99,116,105,111,110, 32, 40,101,118,101,110,116, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,102,111,114, 32,105,100, 44, 32,100,111, 99,117,109,101,110,116, 32,105,110, 32,112, 97,105,114,115, 40,111,112,101,110, 68,111, 99,117,109,101,110,116,115, 41, 32,100,111, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,101,100,105,116,111,114, 32, 61, 32,100,111, 99,117,109,101,110,116, 46,101,100,105,116,111,114, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,100,105,116,111,114, 58, 77, 97,114,107,101,114, 68,101,108,101,116,101, 65,108,108, 40, 67, 85, 82, 82, 69, 78, 84, 95, 76, 73, 78, 69, 95, 77, 65, 82, 75, 69, 82, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,102, 73,115, 67,111,110,110,101, 99,116,101,100, 32, 61, 32,110,105,108, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32,116,104,101,110, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 68,101,108,101,116,101, 40, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,102, 73,115, 82,117,110,110,105,110,103, 32, 61, 32,110,105,108, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32, 61, 32,110,105,108, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 83,101,116, 65,108,108, 69,100,105,116,111,114,115, 82,101, 97,100, 79,110,108,121, 40,102, 97,108,115,101, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,103,110,111,114,101,100, 70,105,108,101,115, 76,105,115,116, 32, 61, 32,123,125, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 68,105,115,112,108, 97,121, 79,117,116,112,117,116, 40, 34, 92,110, 68,101, 98,117,103,103,101,114, 32, 67,108,105,101,110,116, 32,102,105,110,105,115,104,101,100, 92,110, 92,110, 34, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 41, 10, + 10, + 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 67,111,110,110,101, 99,116, 40,119,120, 46,119,120, 73, 68, 95, 65, 78, 89, 44, 32,119,120, 46,119,120, 69, 86, 84, 95, 87, 88, 76, 85, 65, 95, 68, 69, 66, 85, 71, 71, 69, 82, 95, 69, 86, 65, 76, 85, 65, 84, 69, 95, 69, 88, 80, 82, 44, 10, + 32, 32, 32, 32, 32, 32, 32, 32,102,117,110, 99,116,105,111,110, 32, 40,101,118,101,110,116, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,119, 97,116, 99,104, 76,105,115,116, 67,116,114,108, 32,116,104,101,110, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,119, 97,116, 99,104, 76,105,115,116, 67,116,114,108, 58, 83,101,116, 83,116,114,105,110,103, 73,116,101,109, 40,101,118,101,110,116, 58, 71,101,116, 82,101,102,101,114,101,110, 99,101, 40, 41, 44, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 49, 44, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,118,101,110,116, 58, 71,101,116, 77,101,115,115, 97,103,101, 40, 41, 41, 10, + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, + 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 41, 10, + 10, + 10, + 10, + 32, 32, 32, 32,114,101,116,117,114,110, 32,100,101, 98,117,103, 83,101,114,118,101,114, 10, + 101,110,100, 10, + 10, + 10, 102,114, 97,109,101, 58, 67,111,110,110,101, 99,116, 40, 73, 68, 95, 83, 84, 65, 82, 84, 95, 68, 69, 66, 85, 71, 44, 32,119,120, 46,119,120, 69, 86, 84, 95, 67, 79, 77, 77, 65, 78, 68, 95, 77, 69, 78, 85, 95, 83, 69, 76, 69, 67, 84, 69, 68, 44, 10, 32, 32, 32, 32, 32, 32, 32, 32,102,117,110, 99,116,105,111,110, 32, 40,101,118,101,110,116, 41, 10, ! 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32, 61, 32, 67,114,101, 97,116,101, 68,101, 98,117,103, 83,101,114,118,101,114, 40, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32,116,104,101,110, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 83,116, 97,114,116, 67,108,105,101,110,116, 40, 41, 10, *************** *** 1672,1824 **** 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 41, 10, 10, - 102,117,110, 99,116,105,111,110, 32, 68,111,119,110,108,111, 97,100, 66,114,101, 97,107,112,111,105,110,116,115, 40,101,100,105,116,111,114, 44, 32,102,105,108,101, 78, 97,109,101, 41, 10, - 32, 32, 32, 32,108,111, 99, 97,108, 32,110,101,120,116, 76,105,110,101, 32, 61, 32,101,100,105,116,111,114, 58, 77, 97,114,107,101,114, 78,101,120,116, 40, 48, 44, 32, 66, 82, 69, 65, 75, 80, 79, 73, 78, 84, 95, 77, 65, 82, 75, 69, 82, 95, 86, 65, 76, 85, 69, 41, 10, - 32, 32, 32, 32,119,104,105,108,101, 32,110,101,120,116, 76,105,110,101, 32,126, 61, 32, 45, 49, 32,100,111, 10, - 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 65,100,100, 66,114,101, 97,107, 80,111,105,110,116, 40,102,105,108,101, 78, 97,109,101, 44, 32,110,101,120,116, 76,105,110,101, 41, 10, - 32, 32, 32, 32, 32, 32, 32, 32,110,101,120,116, 76,105,110,101, 32, 61, 32,101,100,105,116,111,114, 58, 77, 97,114,107,101,114, 78,101,120,116, 40,110,101,120,116, 76,105,110,101, 32, 43, 32, 49, 44, 32, 66, 82, 69, 65, 75, 80, 79, 73, 78, 84, 95, 77, 65, 82, 75, 69, 82, 95, 86, 65, 76, 85, 69, 41, 10, - 32, 32, 32, 32,101,110,100, 10, - 101,110,100, 10, - 10, - 101,100,105,116,111,114, 65,112,112, 58, 67,111,110,110,101, 99,116, 40,119,120, 46,119,120, 73, 68, 95, 65, 78, 89, 44, 32,119,120, 46,119,120, 69, 86, 84, 95, 87, 88, 76, 85, 65, 95, 68, 69, 66, 85, 71, 71, 69, 82, 95, 67, 76, 73, 69, 78, 84, 95, 67, 79, 78, 78, 69, 67, 84, 69, 68, 44, 10, - 32, 32, 32, 32, 32, 32, 32, 32,102,117,110, 99,116,105,111,110, 32, 40,101,118,101,110,116, 41, 10, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,100,101, 98,117,103, 83,101,114,118,101,114, 32,116,104,101,110, 10, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,102,111,114, 32,105,100, 44, 32,100,111, 99,117,109,101,110,116, 32,105,110, 32,112, 97,105,114,115, 40,111,112,101,110, 68,111, 99,117,109,101,110,116,115, 41, 32,100,111, 10, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,101,100,105,116,111,114, 32, 32, 32, 32, 32, 61, 32,100,111, 99,117,109,101,110,116, 46,101,100,105,116,111,114, 10, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,101,100,105,116,111,114, 84,101,120,116, 32, 61, 32,101,100,105,116,111,114, 58, 71,101,116, 84,101,120,116, 40, 41, 10, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,102,105,108,101, 80, 97,116,104, 32, 32, 32, 61, 32, 77, 97,107,101, 68,101, 98,117,103, 70,105,108,101, 78, 97,109,101, 40,101,100,105,116,111,114, 44, 32,100,111, 99,117,109,101,110,116, 46,102,105,108,101, 80, 97,116,104, 41, 10, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 82,117,110, 40,102,105,108,101, 80, 97,116,104, 44, 32,101,100,105,116,111,114, 84,101,120,116, 41, 10, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 68,111,119,110,108,111, 97,100, 66,114,101, 97,107,112,111,105,110,116,115, 40,101,100,105,116,111,114, 44, 32,102,105,108,101, 80, 97,116,104, 41, 10, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,102, 73,115, 67,111,110,110,101, 99,116,101,100, 32, 61, 32, 49, 10, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,100,101, 98,117,103, 83,101,114,118,101,114, 58, 83,116,101,112, 40, 41, 10, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,102, 73,115, 82,117,110,110,105,110,103, 32, 61, 32, 49, 10, - 10, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 85,112,100, 97,116,101, 85, 73, 77,101,110,117, 73,116,101,109,115, 40, 41, 10, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 68,105,115,112,108, 97,121, 79,117,116,112,117,116, 40, 34, 67,108,105,101,110,116, 32, 99,111,110,110,101, 99,116,101,100, 92,110, 34, 41, 10, - 10, - 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 41, 10, - 10, - 102,117,110, 99,116,105,111,110, 32, 68,101, 98,117,103,103,101,114, 73,103,110,111,114,101, 70,105,108,101, 40,102,105,108,101, 78, 97,109,101, 41, 10, - 32, 32, 32, 32,105,103,110,111,114,101, 70,108, 97,103, 32, 61, 32,110,105,108, 10, - 32, 32, 32, 32,102,111,114, 32,105,100,120, 44, 32,105,103,110,111,114,101, 70,105,108,101, 32,105,110, 32,112, 97,105,114,115, 40,105,103,110,111,114,101,100, 70,105,108,101,115, 76,105,115,116, 41, 32,100,111, 10, - 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,115,116,114,105,110,103, 46,117,112,112,101,114, 40,105,103,110,111,114,101, 70,105,108,101, 41, 32, 61, 61, 32,115,116,114,105,110,103, 46,117,112,112,101,114, 40,102,105,108,101, 78, 97,109,101, 41, 32,116,104,101,110, 10, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,103,110,111,114,101, 70,108, 97,103, 32, 61, 32, 49, 10, - 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, - 32, 32, 32, 32,101,110,100, 10, - 32, 32, 32, 32,114,101,116,117,114,110, 32,105,103,110,111,114,101, 70,108, 97,103, 10, - 101,110,100, 10, - 10, - 101,100,105,116,111,114, 65,112,112, 58, 67,111,110,110,101, 99,116, 40,119,120, 46,119,120, 73, 68, 95, 65, 78, 89, 44, 32,119,120, 46,119,120, 69, 86, 84, 95, 87, 88, 76, 85, 65, 95, 68, 69, 66, 85, 71, 71, 69, 82, 95, 66, 82, 69, 65, 75, 44, 10, - 32, 32, 32, 32, 32, 32, 32, 32,102,117,110, 99,116,105,111,110, 32, 40,101,118,101,110,116, 41, 10, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,101,120,105,116,105,110,103, 80,114,111,103,114, 97,109, 32,116,104,101,110, 32,114,101,116,117,114,110, 32,101,110,100, 10, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,114,111,119, 32, 61, 32,101,118,101,110,116, 58, 71,101,116, 76,105,110,101, 78,117,109, 98,101,114, 40, 41, 10, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,108,111, 99, 97,108, 32,101,118,101,110,116, 70,105,108,101, 78, 97,109,101, 32, 61, 32,101,118,101,110,116, 58, 71,101,116, 70,105,108,101, 78, 97,109,101, 40, 41, 10, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,115,116,114,105,110,103, 46,115,117, 98, 40,101,118,101,110,116, 70,105,108,101, 78, 97,109,101, 44, 32, 49, 44, 32, 49, 41, 32, 61, 61, 32, 39, 64, 39, 32,116,104,101,110, 10, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,118,101,110,116, 70,105,108,101, 78, 97,109,101, 32, 61, 32,115,116,114,105,110,103, 46,115,117, 98, 40,101,118,101,110,116, 70,105,108,101, 78, 97,109,101, 44, 32, 50, 44, 32, 45, 49, 41, 10, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,119,120, 46,119,120, 73,115, 65, 98,115,111,108,117,116,101, 80, 97,116,104, 40,101,118,101,110,116, 70,105,108,101, 78, 97,109,101, 41, 32, 61, 61, 32,102, 97,108,115,101, 32,116,104,101,110, 10, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,118,101,110,116, 70,105,108,101, 78, 97,109,101, 32, 61, 32,119,120, 46,119,120, 71,101,116, 67,119,100, 40, 41, 46, 46, 34, 47, 34, 46, 46,101,118,101,110,116, 70,105,108,101, 78, 97,109,101, 10, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,110,100, 10, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,105,102, 32,119,120, 46,119,120, 80,108, 97,116,102,111,114,109, 87,105,110,100,111,119,115, 32,116,104,101,110, 10, - 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,101,118,101,110,116, 70,105,1... [truncated message content] |
From: John L. <jr...@us...> - 2006-10-04 02:49:20
|
Update of /cvsroot/wxlua/wxLua/modules/wxlua/src In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv31238/wxLua/modules/wxlua/src Modified Files: wxlstate.cpp Log Message: Index: wxlstate.cpp =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxlua/src/wxlstate.cpp,v retrieving revision 1.76 retrieving revision 1.77 diff -C2 -d -r1.76 -r1.77 *** wxlstate.cpp 13 Sep 2006 04:13:46 -0000 1.76 --- wxlstate.cpp 28 Sep 2006 22:26:05 -0000 1.77 *************** *** 1555,1565 **** } ! int wxLuaState::CompileString(const wxString &script, const wxString& name) { wxLuaCharBuffer buf(script); ! int status = CompileBuffer((unsigned char*)buf.GetData(), buf.Length(), name); return status; } ! int wxLuaState::CompileBuffer(const unsigned char buf[], size_t size, const wxString &name) { lua_State *L = lua_open(); --- 1555,1565 ---- } ! int wxLuaState::CompileString(const wxString &script, const wxString& name, wxString* errMsg_, int* line_num_) { wxLuaCharBuffer buf(script); ! int status = CompileBuffer((unsigned char*)buf.GetData(), buf.Length(), name, errMsg_, line_num_); return status; } ! int wxLuaState::CompileBuffer(const unsigned char buf[], size_t size, const wxString &name, wxString* errMsg_, int* line_num_) { lua_State *L = lua_open(); *************** *** 1567,1571 **** int top = lua_gettop(L); int status = luaL_loadbuffer(L, (const char*)buf, size, wx2lua(name)); ! status = LuaError(status, top); lua_close(L); return status; --- 1567,1571 ---- int top = lua_gettop(L); int status = luaL_loadbuffer(L, (const char*)buf, size, wx2lua(name)); ! status = LuaError(status, top, L, errMsg_, line_num_); lua_close(L); return status; *************** *** 1614,1621 **** } ! int wxLuaState::LuaError(int status, int top) { ! wxCHECK_MSG(Ok(), status, wxT("Invalid wxLuaState")); ! lua_State* L = M_WXLSTATEDATA->m_lua_State; int newtop = lua_gettop(L); --- 1614,1624 ---- } ! int wxLuaState::LuaError(int status, int top, lua_State* L, wxString* errMsg_, int* line_num) { ! if (L == NULL) ! { ! wxCHECK_MSG(Ok(), status, wxT("Invalid wxLuaState")); ! L = M_WXLSTATEDATA->m_lua_State; ! } int newtop = lua_gettop(L); *************** *** 1669,1672 **** --- 1672,1678 ---- SendEvent(event); lua_settop(L, top); + + if (errMsg_) *errMsg_ = errorMsg; + if (line_num) *line_num = (int)line; } |