diff options
| author | Jorn Van denbussche | 2018-03-11 19:21:09 +0100 |
|---|---|---|
| committer | Hein-Pieter van Braam | 2018-04-28 16:42:27 +0200 |
| commit | 80fbea28fb675c632b744fef8637ed655eec1644 (patch) | |
| tree | 13ca379a40c068a6af2579a73ea635e9355bb03c /modules | |
| parent | 7ec8a6e75610558530817f4813ca2f11fcc4094d (diff) | |
| download | godot-80fbea28fb675c632b744fef8637ed655eec1644.tar.gz godot-80fbea28fb675c632b744fef8637ed655eec1644.tar.zst godot-80fbea28fb675c632b744fef8637ed655eec1644.zip | |
Fixes importing hdr files with extra header info
(cherry picked from commit 886156da2ca14bfdd7e06858bfc25f6507944d38)
Diffstat (limited to 'modules')
| -rw-r--r-- | modules/hdr/image_loader_hdr.cpp | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/modules/hdr/image_loader_hdr.cpp b/modules/hdr/image_loader_hdr.cpp index 3cc362b5d..d592c19b9 100644 --- a/modules/hdr/image_loader_hdr.cpp +++ b/modules/hdr/image_loader_hdr.cpp @@ -42,14 +42,18 @@ Error ImageLoaderHDR::load_image(Ref<Image> p_image, FileAccess *f, bool p_force ERR_FAIL_COND_V(header != "#?RADIANCE" && header != "#?RGBE", ERR_FILE_UNRECOGNIZED); while (true) { - String format = f->get_token(); + String line = f->get_line(); ERR_FAIL_COND_V(f->eof_reached(), ERR_FILE_UNRECOGNIZED); - if (format.begins_with("FORMAT=") && format != "FORMAT=32-bit_rle_rgbe") { - ERR_EXPLAIN("Only 32-bit_rle_rgbe is supported for .hdr files."); - return ERR_FILE_UNRECOGNIZED; - } - if (format == "FORMAT=32-bit_rle_rgbe") + if (line == "") // empty line indicates end of header break; + if (line.begins_with("FORMAT=")) { // leave option to implement other commands + if (line != "FORMAT=32-bit_rle_rgbe") { + ERR_EXPLAIN("Only 32-bit_rle_rgbe is supported for HDR files."); + return ERR_FILE_UNRECOGNIZED; + } + } else if (!line.begins_with("#")) { // not comment + WARN_PRINTS("Ignoring unsupported header information in HDR : " + line); + } } String token = f->get_token(); |
