From 8a73bd2301655e736bc307aad3c807f4b5310903 Mon Sep 17 00:00:00 2001 From: eddie-0815 Date: Sun, 20 Jan 2008 18:17:19 +0000 Subject: git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@802 b956fd51-792f-4845-bead-9b4dfca2ff2c --- Game/Code/Classes/USongs.pas | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'Game/Code/Classes/USongs.pas') diff --git a/Game/Code/Classes/USongs.pas b/Game/Code/Classes/USongs.pas index c5acec9c..2bf98151 100644 --- a/Game/Code/Classes/USongs.pas +++ b/Game/Code/Classes/USongs.pas @@ -149,7 +149,9 @@ begin inherited create( false ); self.freeonterminate := true; - SongList := TList.create(); + // This check is needed if PseudoThread is used: + if not Assigned(SongList) then + SongList := TList.create(); {$ifdef Delphi} fDirWatch := TDirectoryWatch.create(nil); @@ -191,8 +193,8 @@ end; destructor TSongs.destroy(); begin - freeandnil( SongList ); -end; + freeandnil( SongList ); +end; procedure TSongs.DoDirChanged(Sender: TObject); begin @@ -227,7 +229,11 @@ begin try fProcessing := true; - SongList.clear; + {$IFDEF USE_PSEUDO_THREAD} + if not Assigned(SongList) then + SongList := TList.create(); + {$ENDIF} + SongList.clear; Log.LogError('SongList', 'Searching For Songs'); // browse directories -- cgit v1.2.3