Commit eccba43

Nick committed on
Mitigation for a bug in which non-existent patterns appear in the order table...
commit eccba438680c1bd31062099426c614be7874f92c parent 3b338bf
3 changed files +10−7
Modifiedrendertowave.lfm +1−1
@@ -1,5 +1,5 @@
1 object frmRenderToWave: TfrmRenderToWave 1 object frmRenderToWave: TfrmRenderToWave
2 Left = 1810 2 Left = 1811
3 Height = 219 3 Height = 219
4 Top = 240 4 Top = 240
5 Width = 451 5 Width = 451
Modifiedsong.pas +5−2
@@ -678,8 +678,11 @@ begin
678 678
679 // De-duplicate order matrix such that only unique numbers remain 679 // De-duplicate order matrix such that only unique numbers remain
680 for I := Low(Result.OrderMatrix) to High(Result.OrderMatrix) do 680 for I := Low(Result.OrderMatrix) to High(Result.OrderMatrix) do
681 for J := Low(Result.OrderMatrix[I]) to High(Result.OrderMatrix[I])-1 do 681 for J := Low(Result.OrderMatrix[I]) to High(Result.OrderMatrix[I])-1 do begin
682 Result.OrderMatrix[I, J] := FindMatchingPattern(Result.Patterns[Result.OrderMatrix[I, J]]^); 682 if Result.Patterns.IndexOf(Result.OrderMatrix[I, J]) = -1 then
683 WriteLn(StdErr, '[ERROR] Nonexistent pattern number in order table: ', Result.OrderMatrix[I, J], '!!!');
684 Result.OrderMatrix[I, J] := FindMatchingPattern(Result.Patterns.GetOrCreateNew(Result.OrderMatrix[I, J])^);
685 end;
683 end; 686 end;
684 687
685 function PatternIsUsed(Idx: Integer; const Song: TSong): Boolean; 688 function PatternIsUsed(Idx: Integer; const Song: TSong): Boolean;
Modifiedtracker.lfm +4−4
@@ -1,7 +1,7 @@
1 object frmTracker: TfrmTracker 1 object frmTracker: TfrmTracker
2 Left = 487 2 Left = 1675
3 Height = 653 3 Height = 653
4 Top = 125 4 Top = 120
5 Width = 1232 5 Width = 1232
6 AllowDropFiles = True 6 AllowDropFiles = True
7 Caption = 'hUGETracker' 7 Caption = 'hUGETracker'
@@ -61,10 +61,10 @@ object frmTracker: TfrmTracker
61 Height = 521 61 Height = 521
62 Top = 0 62 Top = 0
63 Width = 1034 63 Width = 1034
64 ActivePage = WavesTabSheet 64 ActivePage = PatternTabSheet
65 Align = alClient 65 Align = alClient
66 ParentFont = False 66 ParentFont = False
67 TabIndex = 3 67 TabIndex = 1
68 TabOrder = 0 68 TabOrder = 0
69 object GeneralTabSheet: TTabSheet 69 object GeneralTabSheet: TTabSheet
70 Caption = 'General' 70 Caption = 'General'