mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-31 17:52:45 +00:00 
			
		
		
		
	Userland: Teach the file utility that empty files also exist
Previously, empty files with no identifiable file type extension would show up as `text/plain`. This fixes it up to show empty files as what they really are - full of nothing.
This commit is contained in:
		
							parent
							
								
									1414c7b049
								
							
						
					
					
						commit
						c69ea44397
					
				
					 1 changed files with 10 additions and 0 deletions
				
			
		|  | @ -12,6 +12,7 @@ | |||
| #include <LibCore/MimeData.h> | ||||
| #include <LibGfx/ImageDecoder.h> | ||||
| #include <stdio.h> | ||||
| #include <sys/stat.h> | ||||
| #include <unistd.h> | ||||
| 
 | ||||
| static Optional<String> description_only(String description, [[maybe_unused]] const String& path) | ||||
|  | @ -121,8 +122,17 @@ int main(int argc, char** argv) | |||
|             continue; | ||||
|         } | ||||
| 
 | ||||
|         struct stat file_stat; | ||||
|         if (lstat(path, &file_stat) < 0) { | ||||
|             perror("lstat"); | ||||
|             return 1; | ||||
|         } | ||||
| 
 | ||||
|         auto file_size_in_bytes = file_stat.st_size; | ||||
|         if (file->is_directory()) { | ||||
|             outln("{}: directory", path); | ||||
|         } else if (!file_size_in_bytes) { | ||||
|             outln("{}: empty", path); | ||||
|         } else { | ||||
|             // Read accounts for longest possible offset + signature we currently match against.
 | ||||
|             auto bytes = file->read(0x9006); | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Valtteri Koskivuori
						Valtteri Koskivuori