From: Ezra B. <ezr...@us...> - 2007-06-11 22:25:46
|
Update of /cvsroot/win32forth/win32forth/apps/Win32ForthIDE In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv28986 Modified Files: ProjectTree.f Log Message: Bug fix for crash when building projects. EAB Index: ProjectTree.f =================================================================== RCS file: /cvsroot/win32forth/win32forth/apps/Win32ForthIDE/ProjectTree.f,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -d -r1.17 -r1.18 *** ProjectTree.f 14 May 2007 05:37:39 -0000 1.17 --- ProjectTree.f 11 Jun 2007 22:25:42 -0000 1.18 *************** *** 20,24 **** \ 0 value TheStatusBar 0 value TheStatusBar ! 0 value module? 0 value dirty? 0 value Modified --- 20,24 ---- \ 0 value TheStatusBar 0 value TheStatusBar ! 0 value dirty? 0 value Modified *************** *** 75,80 **** short itemflags 1 bits itemid \ item id, 0 for child item ! 1 bits recursed ! 14 bits reservedflags 4 cells bytes reserved ;recordsize: sizeof(iteminfo) --- 75,79 ---- short itemflags 1 bits itemid \ item id, 0 for child item ! 15 bits reservedflags 4 cells bytes reserved ;recordsize: sizeof(iteminfo) *************** *** 117,126 **** :m isitemid: ( f -- ) to itemid ;m - - :m recursed: ( -- recursed ) - recursed ;m - - :m isrecursed: ( f -- ) - to recursed ;m ;class --- 116,119 ---- *************** *** 294,322 **** ; - :M InList?: { str cnt thelist -- f } - #items: TheList ?dup - if 1+ 1 - do i >Link#: TheList - Data@: TheList Getname: [ dup ] zcount - str cnt istr= - if unloop exitm - then drop - loop - then 0 ;M - :M AddItem: ( str cnt parentlist -- ) to ThisList pad place no-duplicates? ! if pad count ThisList inlist?: self ?exitm then Data@: ThisList ! if AddLink: ThisList then New> TreeItem dup Data!: ThisList to ThisItem ! pad count 2dup cr type UpdateList ;M :m AddModule: ( str cnt -- ) ! true to module? ModuleList AddItem: self ;m :m AddForm: ( str cnt -- ) ! false to module? FormList AddItem: self ;m :m AddDLL: ( str cnt -- ) --- 287,312 ---- ; :M AddItem: ( str cnt parentlist -- ) to ThisList pad place no-duplicates? ! if #items: ThisList ?dup ! if 1+ 1 ! do i >Link#: ThisList ! Data@: ThisList Getname: [ ] zcount ! pad count istr= ! if unloop exitm ! then ! loop ! then then Data@: ThisList ! if AddLink: ThisList then New> TreeItem dup Data!: ThisList to ThisItem ! pad count UpdateList ;M :m AddModule: ( str cnt -- ) ! ModuleList AddItem: self ;m :m AddForm: ( str cnt -- ) ! FormList AddItem: self ;m :m AddDLL: ( str cnt -- ) *************** *** 978,982 **** s" sys-winlibrary" "of true to skip-recurse? true endof \ don't search .dll file s" load-dialog" "of true to skip-recurse? true to dialog? true endof \ add .res and .h later ! \ s" load-bitmap" "of bl word drop true to skip-recurse? true endof \ skip bitmap name s" toolbar" "of bl word drop true to skip-recurse? true endof \ skip bitmap name ( default ) false swap --- 968,973 ---- s" sys-winlibrary" "of true to skip-recurse? true endof \ don't search .dll file s" load-dialog" "of true to skip-recurse? true to dialog? true endof \ add .res and .h later ! s" thisfile" "of true to skip-recurse? true endof \ special word for PM ??? ! s" load-bitmap" "of bl word drop true to skip-recurse? true endof \ skip bitmap name s" toolbar" "of bl word drop true to skip-recurse? true endof \ skip bitmap name ( default ) false swap *************** *** 999,1005 **** \ Given file name search for needed files ! : BuildNeededFiles { fname fcnt \ tmp$ obj -- } \ recursive routine false to comment? ! maxstring localalloc: tmp$ fname fcnt "open if drop exit --- 990,996 ---- \ Given file name search for needed files ! : BuildNeededFiles { fname fcnt \ tmp$ -- } \ recursive routine false to comment? ! maxstring malloc to tmp$ fname fcnt "open if drop exit *************** *** 1014,1018 **** begin more? dup 0= if drop refill dup ! if 1 +to #linecount \ bump line count then then --- 1005,1009 ---- begin more? dup 0= if drop refill dup ! if 1 +to #linecount \ bump line count then then *************** *** 1021,1037 **** if 2dup addfile dialog? IF 2dup pad place -2 pad c+! s" .res" pad +place pad count addfile THEN skip-recurse? if 2drop ! else comment? >r 2dup module? ! if modulelist: theproject ! else formlist: theproject ! then inlist?: theproject to obj recursed: obj 0= ! if cr ." recursing " type recurse \ save comment? on stack ! else 2drop ! then r> to comment? true isrecursed: obj then then --- 1012,1024 ---- if 2dup addfile + \ 2dup SetText: ProjStatus dialog? IF 2dup pad place -2 pad c+! s" .res" pad +place pad count addfile + THEN skip-recurse? if 2drop ! else comment? -rot recurse to comment? \ save comment? on stack then then *************** *** 1040,1044 **** 2r> (source) 2! r> >in ! ! r> to source-id ; : (build-project) { fClear \ old-path$ -- } --- 1027,1032 ---- 2r> (source) 2! r> >in ! ! r> to source-id ! tmp$ release ; : (build-project) { fClear \ old-path$ -- } *************** *** 1058,1069 **** SetBuildFile: TheProject else drop exit ! then then fClear if Clear: TheProject then GetBuildFile: TheProject ModuleList: TheProject AddItem: TheProject true to Modified ! GetBuildFile: TheProject BuildNeededFiles SortParentLists: TheProject --- 1046,1071 ---- SetBuildFile: TheProject else drop exit ! then GetBuildFile: TheProject ModuleList: TheProject ! AddItem: TheProject ! true to Modified then fClear if Clear: TheProject then + \ s" " SetText: ProjStatus GetBuildFile: TheProject ModuleList: TheProject AddItem: TheProject true to Modified ! s" Building project" "message GetBuildFile: TheProject BuildNeededFiles + message-off + #addedfiles Modified or to Modified + #addedfiles (.) pad place + s" files added\n " pad +place + #linecount 0 (UD,.) pad +place + s" lines searched totalling " pad +place + total-size 0 (UD,.) pad +place + s" bytes" pad +place + true pad count ?Messagebox + + GetBuildFile: TheProject SetBuildFile: TheProject \ update info SortParentLists: TheProject |