Compare commits

..

3 Commits

Author SHA1 Message Date
1577961aa2
Improve compatibility with older dependencies 2023-06-10 11:52:49 +02:00
1fb42e689f
Declare minimum Meson version
Due to our meson.add_install_script() usage, which results in a warning,
followed by an error.
2023-06-10 11:52:49 +02:00
8953e6beea
Update comments 2023-06-09 13:13:17 +02:00
4 changed files with 13 additions and 6 deletions

View File

@ -166,6 +166,10 @@ model_entry_array_new(void)
(GDestroyNotify) fiv_io_model_entry_unref); (GDestroyNotify) fiv_io_model_entry_unref);
} }
#if !GLIB_CHECK_VERSION(2, 70, 0)
#define g_pattern_spec_match g_pattern_match
#endif
static gboolean static gboolean
model_supports(FivIoModel *self, const char *filename) model_supports(FivIoModel *self, const char *filename)
{ {

View File

@ -286,7 +286,8 @@ extract_libraw_unpack(libraw_data_t *iprc, int *flip, GError **error)
// because decoding a thumbnail will always be /much/ quicker than a render. // because decoding a thumbnail will always be /much/ quicker than a render.
// TODO(p): Maybe don't mark raw image thumbnails as low-quality // TODO(p): Maybe don't mark raw image thumbnails as low-quality
// if they're the right aspect ratio, and of sufficiently large size. // if they're the right aspect ratio, and of sufficiently large size.
// And I still worry about tflip. // The only downsides to camera-provided thumbnails seem to be cropping,
// and when they're decoded incorrectly. Also don't trust tflip.
float output_pixels = (float) iprc->sizes.iwidth * iprc->sizes.iheight; float output_pixels = (float) iprc->sizes.iwidth * iprc->sizes.iheight;
// Note that the ratio may even be larger than 1, as seen with CR2 files. // Note that the ratio may even be larger than 1, as seen with CR2 files.
while (i < count && while (i < count &&
@ -363,7 +364,6 @@ extract_libraw_unpack(libraw_data_t *iprc, int *flip, GError **error)
// The main image's "flip" often matches up, but sometimes doesn't, e.g.: // The main image's "flip" often matches up, but sometimes doesn't, e.g.:
// - Phase One/H 25/H25_Outdoor_.IIQ // - Phase One/H 25/H25_Outdoor_.IIQ
// - Phase One/H 25/H25_IT8.7-2_Card.TIF // - Phase One/H 25/H25_IT8.7-2_Card.TIF
// - Leaf/Aptus 22/L_003172.mos (JPEG)
*flip = iprc->sizes.flip *flip = iprc->sizes.flip
return TRUE; return TRUE;
} }
@ -457,7 +457,8 @@ extract_libraw(GFile *target, GMappedFile *mf, GError **error)
// - Samsung/NX200/2013-05-08-194524__sam6589.srw // - Samsung/NX200/2013-05-08-194524__sam6589.srw
// - Sony/DSC-HX95/DSC00018.ARW // - Sony/DSC-HX95/DSC00018.ARW
// Note that LibRaw inserts its own Exif segment if it doesn't find one, // Note that LibRaw inserts its own Exif segment if it doesn't find one,
// and this may differ from flip. // and this may differ from flip. It may also be wrong, as in:
// - Leaf/Aptus 22/L_003172.mos
// //
// Some files are problematic and we won't bother with special-casing: // Some files are problematic and we won't bother with special-casing:
// - Nokia/Lumia 1020/RAW_NOKIA_LUMIA_1020.DNG (bitmap) has wrong color. // - Nokia/Lumia 1020/RAW_NOKIA_LUMIA_1020.DNG (bitmap) has wrong color.

2
fiv.c
View File

@ -1352,7 +1352,7 @@ show_preferences(void)
if (!g_spawn_async( if (!g_spawn_async(
NULL, argv, NULL, G_SPAWN_SEARCH_PATH, NULL, NULL, NULL, &error)) { NULL, argv, NULL, G_SPAWN_SEARCH_PATH, NULL, NULL, NULL, &error)) {
if (g_error_matches(error, G_SPAWN_ERROR, G_SPAWN_ERROR_NOENT)) if (g_error_matches(error, G_SPAWN_ERROR, G_SPAWN_ERROR_NOENT))
g_prefix_error_literal(&error, g_prefix_error(&error, "%s",
"Please install dconf-editor, or use the gsettings utility.\n"); "Please install dconf-editor, or use the gsettings utility.\n");
show_error_dialog(error); show_error_dialog(error);
} }

View File

@ -1,7 +1,8 @@
# vim: noet ts=4 sts=4 sw=4: # vim: noet ts=4 sts=4 sw=4:
project('fiv', 'c', project('fiv', 'c',
default_options : ['c_std=gnu99', 'warning_level=2'], default_options : ['c_std=gnu99', 'warning_level=2'],
version : '0.1.0') version : '0.1.0',
meson_version : '>=0.57')
cc = meson.get_compiler('c') cc = meson.get_compiler('c')
add_project_arguments( add_project_arguments(
@ -153,7 +154,8 @@ gresources = gnome.compile_resources('resources',
tiff_tables = custom_target('tiff-tables.h', tiff_tables = custom_target('tiff-tables.h',
output : 'tiff-tables.h', output : 'tiff-tables.h',
input : 'tiff-tables.db', input : 'tiff-tables.db',
command : ['tiff-tables.awk', '@INPUT@'], # Meson 0.56 chokes on files() as well as on a relative path.
command : [meson.current_source_dir() / 'tiff-tables.awk', '@INPUT@'],
capture : true, capture : true,
) )