Tholp's bespoke website generator

fix template expansion crash

Tholp1 7e4e57e9 3349e4c1

+7 -5
+7 -5
src/macros/template.rs
··· 40 40 41 41 let mut output = self.tokens.clone(); 42 42 43 + for tok in &mut output 44 + { 45 + tok.origin_file = origin_index; 46 + } 47 + 43 48 let mut args_index: usize = 0; 44 49 for param in &self.args { 45 50 let mut found_pattern = find_pattern(&output, format!("[[{}]]", param)); 46 51 while found_pattern.is_some() { 47 52 let (start, len) = found_pattern.unwrap(); 48 53 let replacement = split_to_tokens(args[args_index].clone(), origin_index); 49 - found_pattern = find_pattern( 50 - &output[start + replacement.len()..], 51 - format!("[[{}]]", param), 52 - ); 53 54 output.splice(start..start + len, replacement); 55 + found_pattern = find_pattern(&output, format!("[[{}]]", param)); 54 56 } 55 57 args_index += 1; 56 58 } ··· 59 61 while found_pattern.is_some() { 60 62 let (start, len) = found_pattern.unwrap(); 61 63 let replacement = scope.to_vec(); 62 - found_pattern = find_pattern(&output[start + replacement.len()..], "[[{}]]".into()); 63 64 output.splice(start..start + len, replacement); 65 + found_pattern = find_pattern(&output, "[[{}]]".into()); 64 66 } 65 67 66 68 output