mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-31 07:22:45 +00:00 
			
		
		
		
	LibDebug: Avoid creating the String("serenity/") a bazillion times
We were creating and destroying this string twice for every LineInfo. That's a lot of malloc() and free() during UE startup.
This commit is contained in:
		
							parent
							
								
									fe7036d8f4
								
							
						
					
					
						commit
						4eb3cf68b7
					
				
					 1 changed files with 4 additions and 2 deletions
				
			
		|  | @ -115,12 +115,14 @@ void DebugInfo::prepare_lines() | |||
|         all_lines.append(program.lines()); | ||||
|     } | ||||
| 
 | ||||
|     String serenity_slash("serenity/"); | ||||
| 
 | ||||
|     for (auto& line_info : all_lines) { | ||||
|         String file_path = line_info.file; | ||||
|         if (file_path.contains("Toolchain/") || file_path.contains("libgcc")) | ||||
|             continue; | ||||
|         if (file_path.contains("serenity/")) { | ||||
|             auto start_index = file_path.index_of("serenity/").value() + String("serenity/").length(); | ||||
|         if (file_path.contains(serenity_slash)) { | ||||
|             auto start_index = file_path.index_of(serenity_slash).value() + serenity_slash.length(); | ||||
|             file_path = file_path.substring(start_index, file_path.length() - start_index); | ||||
|         } | ||||
|         m_sorted_lines.append({ line_info.address, file_path, line_info.line }); | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Andreas Kling
						Andreas Kling