@img/sharp-libvips-dev-wasm32 1.3.0-rc.7 → 1.3.0-rc.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/include/aom/aom_codec.h +1 -1
- package/include/aom/aom_decoder.h +4 -0
- package/include/aom/aom_encoder.h +19 -8
- package/include/aom/aom_ext_ratectrl.h +664 -0
- package/include/aom/aom_image.h +93 -30
- package/include/aom/aom_tpl.h +99 -0
- package/include/aom/aomcx.h +89 -16
- package/include/aom/aomdx.h +12 -0
- package/include/expat.h +1 -1
- package/include/expat_config.h +3 -3
- package/include/glib-2.0/gio/gdbusconnection.h +2 -8
- package/include/glib-2.0/gio/gio-visibility.h +34 -0
- package/include/glib-2.0/gio/gioenums.h +5 -4
- package/include/glib-2.0/glib/glib-visibility.h +34 -0
- package/include/glib-2.0/glib/gmacros.h +3 -3
- package/include/glib-2.0/glib/gmarkup.h +10 -0
- package/include/glib-2.0/glib/gmem.h +4 -4
- package/include/glib-2.0/glib/gmessages.h +6 -8
- package/include/glib-2.0/glib/gsequence.h +2 -2
- package/include/glib-2.0/glib/gstrfuncs.h +190 -0
- package/include/glib-2.0/glib/gutils.h +9 -0
- package/include/glib-2.0/glib/gversionmacros.h +9 -0
- package/include/glib-2.0/gmodule/gmodule-visibility.h +34 -0
- package/include/glib-2.0/gobject/gobject-visibility.h +34 -0
- package/include/glib-2.0/gobject/gsignal.h +5 -5
- package/include/glib-2.0/gobject/gtype.h +14 -14
- package/include/libheif/heif.h +2 -0
- package/include/libheif/heif_color.h +127 -11
- package/include/libheif/heif_components.h +264 -0
- package/include/libheif/heif_context.h +2 -1
- package/include/libheif/heif_cxx.h +10 -10
- package/include/libheif/heif_decoding.h +51 -7
- package/include/libheif/heif_encoding.h +15 -9
- package/include/libheif/heif_error.h +9 -2
- package/include/libheif/heif_export.h +48 -0
- package/include/libheif/heif_image.h +81 -66
- package/include/libheif/heif_image_handle.h +2 -2
- package/include/libheif/heif_items.h +1 -1
- package/include/libheif/heif_library.h +8 -16
- package/include/libheif/heif_omaf.h +104 -0
- package/include/libheif/heif_plugin.h +16 -9
- package/include/libheif/heif_properties.h +250 -12
- package/include/libheif/heif_security.h +16 -4
- package/include/libheif/heif_sequences.h +74 -2
- package/include/libheif/heif_tiling.h +2 -2
- package/include/libheif/heif_uncompressed.h +44 -332
- package/include/libheif/heif_version.h +2 -2
- package/include/vips/version.h +4 -4
- package/lib/glib-2.0/include/glibconfig.h +2 -4
- package/lib/libaom.a +0 -0
- package/lib/libcgif.a +0 -0
- package/lib/libexif.a +0 -0
- package/lib/libexpat.a +0 -0
- package/lib/libexpat.la +1 -1
- package/lib/libffi.a +0 -0
- package/lib/libgio-2.0.a +0 -0
- package/lib/libglib-2.0.a +0 -0
- package/lib/libgmodule-2.0.a +0 -0
- package/lib/libgobject-2.0.a +0 -0
- package/lib/libgthread-2.0.a +0 -0
- package/lib/libheif.a +0 -0
- package/lib/libhwy.a +0 -0
- package/lib/libimagequant.a +0 -0
- package/lib/libjpeg.a +0 -0
- package/lib/liblcms2.a +0 -0
- package/lib/libpng.a +0 -0
- package/lib/libpng16.a +0 -0
- package/lib/libresvg.a +0 -0
- package/lib/libsharpyuv.a +0 -0
- package/lib/libtiff.a +0 -0
- package/lib/libuhdr.a +0 -0
- package/lib/libvips-cpp.a +0 -0
- package/lib/libvips.a +0 -0
- package/lib/libwebp.a +0 -0
- package/lib/libwebpdecoder.a +0 -0
- package/lib/libwebpdemux.a +0 -0
- package/lib/libwebpmux.a +0 -0
- package/lib/libz.a +0 -0
- package/lib/pkgconfig/aom.pc +2 -2
- package/lib/pkgconfig/expat.pc +1 -1
- package/lib/pkgconfig/gio-2.0.pc +1 -1
- package/lib/pkgconfig/glib-2.0.pc +1 -1
- package/lib/pkgconfig/gmodule-2.0.pc +1 -1
- package/lib/pkgconfig/gmodule-export-2.0.pc +1 -1
- package/lib/pkgconfig/gmodule-no-export-2.0.pc +1 -1
- package/lib/pkgconfig/gobject-2.0.pc +1 -1
- package/lib/pkgconfig/gthread-2.0.pc +1 -1
- package/lib/pkgconfig/libheif.pc +2 -2
- package/lib/pkgconfig/vips-cpp.pc +1 -1
- package/lib/pkgconfig/vips.pc +1 -1
- package/package.json +1 -1
- package/versions.json +8 -8
- package/include/libheif/heif_uncompressed_types.h +0 -143
|
@@ -782,7 +782,7 @@
|
|
|
782
782
|
/**
|
|
783
783
|
* G_GNUC_FLAG_ENUM:
|
|
784
784
|
*
|
|
785
|
-
* Expands to the GNU C `flag_enum` attribute if the compiler is gcc or clang
|
|
785
|
+
* Expands to the GNU C `flag_enum` attribute if the compiler is `gcc` or `clang`.
|
|
786
786
|
* This attribute indicates that an enumerated type is used in bitwise
|
|
787
787
|
* operations.
|
|
788
788
|
* It is sometimes used in static analysis.
|
|
@@ -799,9 +799,9 @@
|
|
|
799
799
|
* } G_GNUC_FLAG_ENUM GKeyFileFlags;
|
|
800
800
|
* ]|
|
|
801
801
|
*
|
|
802
|
-
*
|
|
802
|
+
* The attribute can also be placed after `enum` and before the opening brace,
|
|
803
803
|
* but that may cause it to be misinterpreted as the name of the enum if the
|
|
804
|
-
* macro is not defined.
|
|
804
|
+
* macro is not defined.
|
|
805
805
|
*
|
|
806
806
|
* Since: 2.88
|
|
807
807
|
*/
|
|
@@ -235,6 +235,16 @@ void g_markup_parse_context_get_tag_start (GMarkupParseContext *
|
|
|
235
235
|
gsize *line_number,
|
|
236
236
|
gsize *char_number,
|
|
237
237
|
gsize *offset);
|
|
238
|
+
GLIB_AVAILABLE_IN_2_90
|
|
239
|
+
void g_markup_parse_context_get_attribute_position
|
|
240
|
+
(GMarkupParseContext *context,
|
|
241
|
+
unsigned int attr,
|
|
242
|
+
size_t *start_lines,
|
|
243
|
+
size_t *start_chars,
|
|
244
|
+
size_t *start_offset,
|
|
245
|
+
size_t *end_lines,
|
|
246
|
+
size_t *end_chars,
|
|
247
|
+
size_t *end_offset);
|
|
238
248
|
|
|
239
249
|
GLIB_AVAILABLE_IN_ALL
|
|
240
250
|
gpointer g_markup_parse_context_get_user_data (GMarkupParseContext *context);
|
|
@@ -86,14 +86,14 @@ GLIB_AVAILABLE_IN_ALL
|
|
|
86
86
|
gpointer g_malloc0 (gsize n_bytes) G_GNUC_MALLOC G_GNUC_ALLOC_SIZE(1);
|
|
87
87
|
GLIB_AVAILABLE_IN_ALL
|
|
88
88
|
gpointer g_realloc (gpointer mem,
|
|
89
|
-
gsize n_bytes) G_GNUC_WARN_UNUSED_RESULT;
|
|
89
|
+
gsize n_bytes) G_GNUC_WARN_UNUSED_RESULT G_GNUC_ALLOC_SIZE(2);
|
|
90
90
|
GLIB_AVAILABLE_IN_ALL
|
|
91
91
|
gpointer g_try_malloc (gsize n_bytes) G_GNUC_MALLOC G_GNUC_ALLOC_SIZE(1);
|
|
92
92
|
GLIB_AVAILABLE_IN_ALL
|
|
93
93
|
gpointer g_try_malloc0 (gsize n_bytes) G_GNUC_MALLOC G_GNUC_ALLOC_SIZE(1);
|
|
94
94
|
GLIB_AVAILABLE_IN_ALL
|
|
95
95
|
gpointer g_try_realloc (gpointer mem,
|
|
96
|
-
gsize n_bytes) G_GNUC_WARN_UNUSED_RESULT;
|
|
96
|
+
gsize n_bytes) G_GNUC_WARN_UNUSED_RESULT G_GNUC_ALLOC_SIZE(2);
|
|
97
97
|
|
|
98
98
|
GLIB_AVAILABLE_IN_ALL
|
|
99
99
|
gpointer g_malloc_n (gsize n_blocks,
|
|
@@ -104,7 +104,7 @@ gpointer g_malloc0_n (gsize n_blocks,
|
|
|
104
104
|
GLIB_AVAILABLE_IN_ALL
|
|
105
105
|
gpointer g_realloc_n (gpointer mem,
|
|
106
106
|
gsize n_blocks,
|
|
107
|
-
gsize n_block_bytes) G_GNUC_WARN_UNUSED_RESULT;
|
|
107
|
+
gsize n_block_bytes) G_GNUC_WARN_UNUSED_RESULT G_GNUC_ALLOC_SIZE2(2,3);
|
|
108
108
|
GLIB_AVAILABLE_IN_ALL
|
|
109
109
|
gpointer g_try_malloc_n (gsize n_blocks,
|
|
110
110
|
gsize n_block_bytes) G_GNUC_MALLOC G_GNUC_ALLOC_SIZE2(1,2);
|
|
@@ -114,7 +114,7 @@ gpointer g_try_malloc0_n (gsize n_blocks,
|
|
|
114
114
|
GLIB_AVAILABLE_IN_ALL
|
|
115
115
|
gpointer g_try_realloc_n (gpointer mem,
|
|
116
116
|
gsize n_blocks,
|
|
117
|
-
gsize n_block_bytes) G_GNUC_WARN_UNUSED_RESULT;
|
|
117
|
+
gsize n_block_bytes) G_GNUC_WARN_UNUSED_RESULT G_GNUC_ALLOC_SIZE2(2,3);
|
|
118
118
|
|
|
119
119
|
GLIB_AVAILABLE_IN_2_72
|
|
120
120
|
gpointer g_aligned_alloc (gsize n_blocks,
|
|
@@ -32,6 +32,7 @@
|
|
|
32
32
|
#endif
|
|
33
33
|
|
|
34
34
|
#include <stdarg.h>
|
|
35
|
+
#include <stdlib.h>
|
|
35
36
|
#include <glib/gatomic.h>
|
|
36
37
|
#include <glib/gtypes.h>
|
|
37
38
|
#include <glib/gmacros.h>
|
|
@@ -329,7 +330,7 @@ void g_log_structured_standard (const gchar *log_domain,
|
|
|
329
330
|
g_log_structured_standard (G_LOG_DOMAIN, G_LOG_LEVEL_ERROR, \
|
|
330
331
|
__FILE__, G_STRINGIFY (__LINE__), \
|
|
331
332
|
G_STRFUNC, __VA_ARGS__); \
|
|
332
|
-
|
|
333
|
+
abort (); \
|
|
333
334
|
} G_STMT_END
|
|
334
335
|
#define g_message(...) g_log_structured_standard (G_LOG_DOMAIN, G_LOG_LEVEL_MESSAGE, \
|
|
335
336
|
__FILE__, G_STRINGIFY (__LINE__), \
|
|
@@ -347,14 +348,11 @@ void g_log_structured_standard (const gchar *log_domain,
|
|
|
347
348
|
__FILE__, G_STRINGIFY (__LINE__), \
|
|
348
349
|
G_STRFUNC, __VA_ARGS__)
|
|
349
350
|
#else
|
|
350
|
-
/* for(;;) ; so that GCC knows that control doesn't go past g_error().
|
|
351
|
-
* Put space before ending semicolon to avoid C++ build warnings.
|
|
352
|
-
*/
|
|
353
351
|
#define g_error(...) G_STMT_START { \
|
|
354
352
|
g_log (G_LOG_DOMAIN, \
|
|
355
353
|
G_LOG_LEVEL_ERROR, \
|
|
356
354
|
__VA_ARGS__); \
|
|
357
|
-
|
|
355
|
+
abort (); \
|
|
358
356
|
} G_STMT_END
|
|
359
357
|
#define g_message(...) g_log (G_LOG_DOMAIN, \
|
|
360
358
|
G_LOG_LEVEL_MESSAGE, \
|
|
@@ -378,7 +376,7 @@ void g_log_structured_standard (const gchar *log_domain,
|
|
|
378
376
|
g_log_structured_standard (G_LOG_DOMAIN, G_LOG_LEVEL_ERROR, \
|
|
379
377
|
__FILE__, G_STRINGIFY (__LINE__), \
|
|
380
378
|
G_STRFUNC, format); \
|
|
381
|
-
|
|
379
|
+
abort (); \
|
|
382
380
|
} G_STMT_END
|
|
383
381
|
#define g_message(format...) g_log_structured_standard (G_LOG_DOMAIN, G_LOG_LEVEL_MESSAGE, \
|
|
384
382
|
__FILE__, G_STRINGIFY (__LINE__), \
|
|
@@ -400,7 +398,7 @@ void g_log_structured_standard (const gchar *log_domain,
|
|
|
400
398
|
g_log (G_LOG_DOMAIN, \
|
|
401
399
|
G_LOG_LEVEL_ERROR, \
|
|
402
400
|
format); \
|
|
403
|
-
|
|
401
|
+
abort (); \
|
|
404
402
|
} G_STMT_END
|
|
405
403
|
|
|
406
404
|
#define g_message(format...) g_log (G_LOG_DOMAIN, \
|
|
@@ -432,7 +430,7 @@ g_error (const gchar *format,
|
|
|
432
430
|
g_logv (G_LOG_DOMAIN, G_LOG_LEVEL_ERROR, format, args);
|
|
433
431
|
va_end (args);
|
|
434
432
|
|
|
435
|
-
|
|
433
|
+
abort ();
|
|
436
434
|
}
|
|
437
435
|
static inline void
|
|
438
436
|
g_message (const gchar *format,
|
|
@@ -43,7 +43,7 @@ GSequence * g_sequence_new (GDestroyNotify data_des
|
|
|
43
43
|
GLIB_AVAILABLE_IN_ALL
|
|
44
44
|
void g_sequence_free (GSequence *seq);
|
|
45
45
|
GLIB_AVAILABLE_IN_ALL
|
|
46
|
-
gint g_sequence_get_length (GSequence *seq);
|
|
46
|
+
gint g_sequence_get_length (GSequence *seq) G_GNUC_PURE;
|
|
47
47
|
GLIB_AVAILABLE_IN_ALL
|
|
48
48
|
void g_sequence_foreach (GSequence *seq,
|
|
49
49
|
GFunc func,
|
|
@@ -62,7 +62,7 @@ void g_sequence_sort_iter (GSequence *seq,
|
|
|
62
62
|
GSequenceIterCompareFunc cmp_func,
|
|
63
63
|
gpointer cmp_data);
|
|
64
64
|
GLIB_AVAILABLE_IN_2_48
|
|
65
|
-
gboolean g_sequence_is_empty (GSequence *seq);
|
|
65
|
+
gboolean g_sequence_is_empty (GSequence *seq) G_GNUC_PURE;
|
|
66
66
|
|
|
67
67
|
|
|
68
68
|
/* Getting iters */
|
|
@@ -471,6 +471,9 @@ gboolean g_ascii_string_to_unsigned (const gchar *str,
|
|
|
471
471
|
* }
|
|
472
472
|
* ```
|
|
473
473
|
*
|
|
474
|
+
* See also [func@GLib.set_str_take] for a version of this which steals
|
|
475
|
+
* ownership of @new_str.
|
|
476
|
+
*
|
|
474
477
|
* Returns: true if the value of @str_pointer changed, false otherwise
|
|
475
478
|
*
|
|
476
479
|
* Since: 2.76
|
|
@@ -497,6 +500,193 @@ g_set_str (char **str_pointer,
|
|
|
497
500
|
return TRUE;
|
|
498
501
|
}
|
|
499
502
|
|
|
503
|
+
/**
|
|
504
|
+
* g_set_str_take: (skip)
|
|
505
|
+
* @str_pointer: (inout) (not optional) (nullable): a pointer to either
|
|
506
|
+
* a string or `NULL`
|
|
507
|
+
* @new_str: (transfer full) (nullable): a string to assign to @str_pointer
|
|
508
|
+
*
|
|
509
|
+
* Updates a pointer to a string to @new_str and returns whether the
|
|
510
|
+
* string was changed. Steals ownership of @new_str.
|
|
511
|
+
*
|
|
512
|
+
* If @new_str matches the previous string, this function will free @new_str and
|
|
513
|
+
* leave @str_pointer unchanged. If @new_str is different, it will be assigned
|
|
514
|
+
* to @str_pointer and the previous string pointed to by @str_pointer will be
|
|
515
|
+
* freed with [func@GLib.free].
|
|
516
|
+
*
|
|
517
|
+
* @str_pointer must not be `NULL`, but can point to a `NULL` value.
|
|
518
|
+
*
|
|
519
|
+
* One convenient usage of this function is in implementing property settings:
|
|
520
|
+
* ```C
|
|
521
|
+
* void
|
|
522
|
+
* foo_set_bar (Foo *foo,
|
|
523
|
+
* const char *new_bar)
|
|
524
|
+
* {
|
|
525
|
+
* g_autofree computed_new_bar = NULL;
|
|
526
|
+
*
|
|
527
|
+
* g_return_if_fail (IS_FOO (foo));
|
|
528
|
+
*
|
|
529
|
+
* computed_new_bar = g_strconcat (new_bar, "some-suffix", NULL);
|
|
530
|
+
*
|
|
531
|
+
* if (g_set_str_take (&foo->bar, g_steal_pointer (&computed_new_bar)))
|
|
532
|
+
* g_object_notify (foo, "bar");
|
|
533
|
+
* }
|
|
534
|
+
* ```
|
|
535
|
+
*
|
|
536
|
+
* See also [func@GLib.set_str] for a version of this which takes a copy of
|
|
537
|
+
* @new_str.
|
|
538
|
+
*
|
|
539
|
+
* Returns: true if the value of @str_pointer changed, false otherwise
|
|
540
|
+
*
|
|
541
|
+
* Since: 2.90
|
|
542
|
+
*/
|
|
543
|
+
GLIB_AVAILABLE_STATIC_INLINE_IN_2_90
|
|
544
|
+
static inline gboolean g_set_str_take (char **str_pointer,
|
|
545
|
+
char *new_str);
|
|
546
|
+
|
|
547
|
+
GLIB_AVAILABLE_STATIC_INLINE_IN_2_90
|
|
548
|
+
static inline gboolean
|
|
549
|
+
g_set_str_take (char **str_pointer,
|
|
550
|
+
char *new_str)
|
|
551
|
+
{
|
|
552
|
+
/* You could pass the value of `*str_pointer` in to this function, but you
|
|
553
|
+
* really should do it using g_steal_pointer() to document the ownership
|
|
554
|
+
* transfer. */
|
|
555
|
+
if (*str_pointer == new_str)
|
|
556
|
+
return FALSE;
|
|
557
|
+
|
|
558
|
+
if (*str_pointer != NULL &&
|
|
559
|
+
new_str != NULL &&
|
|
560
|
+
strcmp (*str_pointer, new_str) == 0)
|
|
561
|
+
{
|
|
562
|
+
g_free (new_str);
|
|
563
|
+
return FALSE;
|
|
564
|
+
}
|
|
565
|
+
|
|
566
|
+
g_free (*str_pointer);
|
|
567
|
+
*str_pointer = new_str;
|
|
568
|
+
new_str = NULL; /* stolen */
|
|
569
|
+
|
|
570
|
+
return TRUE;
|
|
571
|
+
}
|
|
572
|
+
|
|
573
|
+
/**
|
|
574
|
+
* g_set_strv: (skip)
|
|
575
|
+
* @strv_pointer: (inout) (not optional) (nullable): a pointer to either
|
|
576
|
+
* a `NULL`-terminated string array or `NULL`
|
|
577
|
+
* @new_strv: (nullable): a NULL-terminated string array to assign to
|
|
578
|
+
* @strv_pointer
|
|
579
|
+
*
|
|
580
|
+
* Safely replaces a string vector.
|
|
581
|
+
*
|
|
582
|
+
* Updates a pointer to a `NULL`-terminated string array to a copy of @new_strv
|
|
583
|
+
* and returns whether the value was changed.
|
|
584
|
+
*
|
|
585
|
+
* If @new_strv matches the previous array, this function is a no-op. If
|
|
586
|
+
* @new_strv is different, a copy of it will be assigned to @strv_pointer and
|
|
587
|
+
* the previous array pointed to by @strv_pointer will be freed with
|
|
588
|
+
* [func@GLib.strfreev].
|
|
589
|
+
*
|
|
590
|
+
* The contents of both string arrays are compared for equality before
|
|
591
|
+
* replacing the value. In the worst case this requires O(N) time.
|
|
592
|
+
*
|
|
593
|
+
* This function avoids a potential use-after-free when @new_strv reuses
|
|
594
|
+
* pointers from the original string array. This allows callers to build
|
|
595
|
+
* a replacement array using existing strings without needing to copy
|
|
596
|
+
* them beforehand.
|
|
597
|
+
*
|
|
598
|
+
* @strv_pointer must not be `NULL`, but can point to a `NULL` value.
|
|
599
|
+
*
|
|
600
|
+
* Returns: true if the value of @strv_pointer changed, false otherwise
|
|
601
|
+
*
|
|
602
|
+
* Since: 2.90
|
|
603
|
+
*/
|
|
604
|
+
GLIB_AVAILABLE_STATIC_INLINE_IN_2_90
|
|
605
|
+
static inline gboolean g_set_strv (char ***strv_pointer,
|
|
606
|
+
const char * const *new_strv);
|
|
607
|
+
|
|
608
|
+
GLIB_AVAILABLE_STATIC_INLINE_IN_2_90
|
|
609
|
+
static inline gboolean
|
|
610
|
+
g_set_strv (char ***strv_pointer,
|
|
611
|
+
const char * const *new_strv)
|
|
612
|
+
{
|
|
613
|
+
char **copy;
|
|
614
|
+
|
|
615
|
+
if ((const char * const *)*strv_pointer == new_strv)
|
|
616
|
+
return FALSE;
|
|
617
|
+
|
|
618
|
+
G_GNUC_BEGIN_IGNORE_DEPRECATIONS
|
|
619
|
+
if (*strv_pointer && new_strv &&
|
|
620
|
+
g_strv_equal ((const char * const *)*strv_pointer, new_strv))
|
|
621
|
+
return FALSE;
|
|
622
|
+
G_GNUC_END_IGNORE_DEPRECATIONS
|
|
623
|
+
|
|
624
|
+
copy = g_strdupv ((char **) (guintptr) new_strv);
|
|
625
|
+
g_strfreev (*strv_pointer);
|
|
626
|
+
*strv_pointer = copy;
|
|
627
|
+
|
|
628
|
+
return TRUE;
|
|
629
|
+
}
|
|
630
|
+
|
|
631
|
+
/**
|
|
632
|
+
* g_set_strv_take: (skip)
|
|
633
|
+
* @strv_pointer: (inout) (not optional) (nullable): a pointer to either
|
|
634
|
+
* a `NULL`-terminated string array or `NULL`
|
|
635
|
+
* @new_strv: (transfer full) (nullable): a `NULL`-terminated string array to
|
|
636
|
+
* assign to @strv_pointer
|
|
637
|
+
*
|
|
638
|
+
* Safely replaces a string vector, taking ownership of the new value.
|
|
639
|
+
*
|
|
640
|
+
* Updates a pointer to a `NULL`-terminated string array to @new_strv and
|
|
641
|
+
* returns whether the value was changed.
|
|
642
|
+
*
|
|
643
|
+
* If @new_strv contains the same strings as the previous array, this function
|
|
644
|
+
* is a no-op. If @new_strv is different, it will be assigned to @strv_pointer
|
|
645
|
+
* and the previous array pointed to by @strv_pointer will be freed with
|
|
646
|
+
* [func@GLib.strfreev].
|
|
647
|
+
*
|
|
648
|
+
* If @new_strv does not replace the existing value, it will be freed with
|
|
649
|
+
* [func@GLib.strfreev], unless it is `NULL`.
|
|
650
|
+
*
|
|
651
|
+
* The contents of both string arrays are compared for equality before
|
|
652
|
+
* replacing the value. In the worst case this requires O(N) time.
|
|
653
|
+
*
|
|
654
|
+
* @strv_pointer must not be `NULL`, but can point to a `NULL` value.
|
|
655
|
+
* @new_strv must be `NULL` or a string array not already stored in
|
|
656
|
+
* @strv_pointer.
|
|
657
|
+
*
|
|
658
|
+
* Returns: true if the value of @strv_pointer changed, false otherwise
|
|
659
|
+
*
|
|
660
|
+
* Since: 2.90
|
|
661
|
+
*/
|
|
662
|
+
GLIB_AVAILABLE_STATIC_INLINE_IN_2_90
|
|
663
|
+
static inline gboolean g_set_strv_take (char ***strv_pointer,
|
|
664
|
+
char **new_strv);
|
|
665
|
+
|
|
666
|
+
GLIB_AVAILABLE_STATIC_INLINE_IN_2_90
|
|
667
|
+
static inline gboolean
|
|
668
|
+
g_set_strv_take (char ***strv_pointer,
|
|
669
|
+
char **new_strv)
|
|
670
|
+
{
|
|
671
|
+
if (*strv_pointer == NULL && new_strv == NULL)
|
|
672
|
+
return FALSE;
|
|
673
|
+
|
|
674
|
+
G_GNUC_BEGIN_IGNORE_DEPRECATIONS
|
|
675
|
+
if (*strv_pointer && new_strv &&
|
|
676
|
+
g_strv_equal ((const char * const *)*strv_pointer,
|
|
677
|
+
(const char * const *)new_strv))
|
|
678
|
+
{
|
|
679
|
+
g_strfreev (new_strv);
|
|
680
|
+
return FALSE;
|
|
681
|
+
}
|
|
682
|
+
G_GNUC_END_IGNORE_DEPRECATIONS
|
|
683
|
+
|
|
684
|
+
g_strfreev (*strv_pointer);
|
|
685
|
+
*strv_pointer = new_strv;
|
|
686
|
+
|
|
687
|
+
return TRUE;
|
|
688
|
+
}
|
|
689
|
+
|
|
500
690
|
G_END_DECLS
|
|
501
691
|
|
|
502
692
|
#endif /* __G_STRFUNCS_H__ */
|
|
@@ -248,6 +248,15 @@ typedef enum {
|
|
|
248
248
|
G_USER_DIRECTORY_TEMPLATES,
|
|
249
249
|
G_USER_DIRECTORY_VIDEOS,
|
|
250
250
|
|
|
251
|
+
/**
|
|
252
|
+
* G_USER_DIRECTORY_PROJECTS:
|
|
253
|
+
*
|
|
254
|
+
* The user's Projects directory.
|
|
255
|
+
*
|
|
256
|
+
* Since: 2.90
|
|
257
|
+
*/
|
|
258
|
+
G_USER_DIRECTORY_PROJECTS,
|
|
259
|
+
|
|
251
260
|
G_USER_N_DIRECTORIES
|
|
252
261
|
} GUserDirectory;
|
|
253
262
|
|
|
@@ -444,6 +444,15 @@
|
|
|
444
444
|
* Since: 2.88
|
|
445
445
|
*/
|
|
446
446
|
#define GLIB_VERSION_2_88 (G_ENCODE_VERSION (2, 88))
|
|
447
|
+
/**
|
|
448
|
+
* GLIB_VERSION_2_90:
|
|
449
|
+
*
|
|
450
|
+
* A macro that evaluates to the 2.90 version of GLib, in a format
|
|
451
|
+
* that can be used by the C pre-processor.
|
|
452
|
+
*
|
|
453
|
+
* Since: 2.90
|
|
454
|
+
*/
|
|
455
|
+
#define GLIB_VERSION_2_90 (G_ENCODE_VERSION (2, 90))
|
|
447
456
|
|
|
448
457
|
/**
|
|
449
458
|
* GLIB_VERSION_CUR_STABLE:
|
|
@@ -1120,3 +1120,37 @@
|
|
|
1120
1120
|
#define GMODULE_AVAILABLE_ENUMERATOR_IN_2_88
|
|
1121
1121
|
#define GMODULE_AVAILABLE_TYPE_IN_2_88
|
|
1122
1122
|
#endif
|
|
1123
|
+
|
|
1124
|
+
#if GLIB_VERSION_MIN_REQUIRED >= GLIB_VERSION_2_90
|
|
1125
|
+
#define GMODULE_DEPRECATED_IN_2_90 GMODULE_DEPRECATED
|
|
1126
|
+
#define GMODULE_DEPRECATED_IN_2_90_FOR(f) GMODULE_DEPRECATED_FOR (f)
|
|
1127
|
+
#define GMODULE_DEPRECATED_MACRO_IN_2_90 GLIB_DEPRECATED_MACRO
|
|
1128
|
+
#define GMODULE_DEPRECATED_MACRO_IN_2_90_FOR(f) GLIB_DEPRECATED_MACRO_FOR (f)
|
|
1129
|
+
#define GMODULE_DEPRECATED_ENUMERATOR_IN_2_90 GLIB_DEPRECATED_ENUMERATOR
|
|
1130
|
+
#define GMODULE_DEPRECATED_ENUMERATOR_IN_2_90_FOR(f) GLIB_DEPRECATED_ENUMERATOR_FOR (f)
|
|
1131
|
+
#define GMODULE_DEPRECATED_TYPE_IN_2_90 GLIB_DEPRECATED_TYPE
|
|
1132
|
+
#define GMODULE_DEPRECATED_TYPE_IN_2_90_FOR(f) GLIB_DEPRECATED_TYPE_FOR (f)
|
|
1133
|
+
#else
|
|
1134
|
+
#define GMODULE_DEPRECATED_IN_2_90 _GMODULE_EXTERN
|
|
1135
|
+
#define GMODULE_DEPRECATED_IN_2_90_FOR(f) _GMODULE_EXTERN
|
|
1136
|
+
#define GMODULE_DEPRECATED_MACRO_IN_2_90
|
|
1137
|
+
#define GMODULE_DEPRECATED_MACRO_IN_2_90_FOR(f)
|
|
1138
|
+
#define GMODULE_DEPRECATED_ENUMERATOR_IN_2_90
|
|
1139
|
+
#define GMODULE_DEPRECATED_ENUMERATOR_IN_2_90_FOR(f)
|
|
1140
|
+
#define GMODULE_DEPRECATED_TYPE_IN_2_90
|
|
1141
|
+
#define GMODULE_DEPRECATED_TYPE_IN_2_90_FOR(f)
|
|
1142
|
+
#endif
|
|
1143
|
+
|
|
1144
|
+
#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_90
|
|
1145
|
+
#define GMODULE_AVAILABLE_IN_2_90 GMODULE_UNAVAILABLE (2, 90)
|
|
1146
|
+
#define GMODULE_AVAILABLE_STATIC_INLINE_IN_2_90 GLIB_UNAVAILABLE_STATIC_INLINE (2, 90)
|
|
1147
|
+
#define GMODULE_AVAILABLE_MACRO_IN_2_90 GLIB_UNAVAILABLE_MACRO (2, 90)
|
|
1148
|
+
#define GMODULE_AVAILABLE_ENUMERATOR_IN_2_90 GLIB_UNAVAILABLE_ENUMERATOR (2, 90)
|
|
1149
|
+
#define GMODULE_AVAILABLE_TYPE_IN_2_90 GLIB_UNAVAILABLE_TYPE (2, 90)
|
|
1150
|
+
#else
|
|
1151
|
+
#define GMODULE_AVAILABLE_IN_2_90 _GMODULE_EXTERN
|
|
1152
|
+
#define GMODULE_AVAILABLE_STATIC_INLINE_IN_2_90
|
|
1153
|
+
#define GMODULE_AVAILABLE_MACRO_IN_2_90
|
|
1154
|
+
#define GMODULE_AVAILABLE_ENUMERATOR_IN_2_90
|
|
1155
|
+
#define GMODULE_AVAILABLE_TYPE_IN_2_90
|
|
1156
|
+
#endif
|
|
@@ -1120,3 +1120,37 @@
|
|
|
1120
1120
|
#define GOBJECT_AVAILABLE_ENUMERATOR_IN_2_88
|
|
1121
1121
|
#define GOBJECT_AVAILABLE_TYPE_IN_2_88
|
|
1122
1122
|
#endif
|
|
1123
|
+
|
|
1124
|
+
#if GLIB_VERSION_MIN_REQUIRED >= GLIB_VERSION_2_90
|
|
1125
|
+
#define GOBJECT_DEPRECATED_IN_2_90 GOBJECT_DEPRECATED
|
|
1126
|
+
#define GOBJECT_DEPRECATED_IN_2_90_FOR(f) GOBJECT_DEPRECATED_FOR (f)
|
|
1127
|
+
#define GOBJECT_DEPRECATED_MACRO_IN_2_90 GLIB_DEPRECATED_MACRO
|
|
1128
|
+
#define GOBJECT_DEPRECATED_MACRO_IN_2_90_FOR(f) GLIB_DEPRECATED_MACRO_FOR (f)
|
|
1129
|
+
#define GOBJECT_DEPRECATED_ENUMERATOR_IN_2_90 GLIB_DEPRECATED_ENUMERATOR
|
|
1130
|
+
#define GOBJECT_DEPRECATED_ENUMERATOR_IN_2_90_FOR(f) GLIB_DEPRECATED_ENUMERATOR_FOR (f)
|
|
1131
|
+
#define GOBJECT_DEPRECATED_TYPE_IN_2_90 GLIB_DEPRECATED_TYPE
|
|
1132
|
+
#define GOBJECT_DEPRECATED_TYPE_IN_2_90_FOR(f) GLIB_DEPRECATED_TYPE_FOR (f)
|
|
1133
|
+
#else
|
|
1134
|
+
#define GOBJECT_DEPRECATED_IN_2_90 _GOBJECT_EXTERN
|
|
1135
|
+
#define GOBJECT_DEPRECATED_IN_2_90_FOR(f) _GOBJECT_EXTERN
|
|
1136
|
+
#define GOBJECT_DEPRECATED_MACRO_IN_2_90
|
|
1137
|
+
#define GOBJECT_DEPRECATED_MACRO_IN_2_90_FOR(f)
|
|
1138
|
+
#define GOBJECT_DEPRECATED_ENUMERATOR_IN_2_90
|
|
1139
|
+
#define GOBJECT_DEPRECATED_ENUMERATOR_IN_2_90_FOR(f)
|
|
1140
|
+
#define GOBJECT_DEPRECATED_TYPE_IN_2_90
|
|
1141
|
+
#define GOBJECT_DEPRECATED_TYPE_IN_2_90_FOR(f)
|
|
1142
|
+
#endif
|
|
1143
|
+
|
|
1144
|
+
#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_90
|
|
1145
|
+
#define GOBJECT_AVAILABLE_IN_2_90 GOBJECT_UNAVAILABLE (2, 90)
|
|
1146
|
+
#define GOBJECT_AVAILABLE_STATIC_INLINE_IN_2_90 GLIB_UNAVAILABLE_STATIC_INLINE (2, 90)
|
|
1147
|
+
#define GOBJECT_AVAILABLE_MACRO_IN_2_90 GLIB_UNAVAILABLE_MACRO (2, 90)
|
|
1148
|
+
#define GOBJECT_AVAILABLE_ENUMERATOR_IN_2_90 GLIB_UNAVAILABLE_ENUMERATOR (2, 90)
|
|
1149
|
+
#define GOBJECT_AVAILABLE_TYPE_IN_2_90 GLIB_UNAVAILABLE_TYPE (2, 90)
|
|
1150
|
+
#else
|
|
1151
|
+
#define GOBJECT_AVAILABLE_IN_2_90 _GOBJECT_EXTERN
|
|
1152
|
+
#define GOBJECT_AVAILABLE_STATIC_INLINE_IN_2_90
|
|
1153
|
+
#define GOBJECT_AVAILABLE_MACRO_IN_2_90
|
|
1154
|
+
#define GOBJECT_AVAILABLE_ENUMERATOR_IN_2_90
|
|
1155
|
+
#define GOBJECT_AVAILABLE_TYPE_IN_2_90
|
|
1156
|
+
#endif
|
|
@@ -109,16 +109,16 @@ typedef gboolean (*GSignalAccumulator) (GSignalInvocationHint *ihint,
|
|
|
109
109
|
/* --- run, match and connect types --- */
|
|
110
110
|
/**
|
|
111
111
|
* GSignalFlags:
|
|
112
|
-
* @G_SIGNAL_RUN_FIRST: Invoke the
|
|
113
|
-
* @G_SIGNAL_RUN_LAST: Invoke the
|
|
114
|
-
* @G_SIGNAL_RUN_CLEANUP: Invoke the
|
|
112
|
+
* @G_SIGNAL_RUN_FIRST: Invoke the default signal handler in the first emission stage
|
|
113
|
+
* @G_SIGNAL_RUN_LAST: Invoke the default signal handler in the third emission stage
|
|
114
|
+
* @G_SIGNAL_RUN_CLEANUP: Invoke the default signal handler in the last emission stage
|
|
115
115
|
* @G_SIGNAL_NO_RECURSE: Signals being emitted for an object while currently being in
|
|
116
116
|
* emission for this very object will not be emitted recursively,
|
|
117
117
|
* but instead cause the first emission to be restarted.
|
|
118
|
-
* @G_SIGNAL_DETAILED: This signal supports
|
|
118
|
+
* @G_SIGNAL_DETAILED: This signal supports `::detail` appendices to the signal name
|
|
119
119
|
* upon handler connections and emissions.
|
|
120
120
|
* @G_SIGNAL_ACTION: Action signals are signals that may freely be emitted on alive
|
|
121
|
-
* objects from user code via
|
|
121
|
+
* objects from user code via [func@GObject.signal_emit] and friends, without
|
|
122
122
|
* the need of being embedded into extra code that performs pre or
|
|
123
123
|
* post emission adjustments on the object. They can also be thought
|
|
124
124
|
* of as object methods which can be called generically by
|
|
@@ -1574,7 +1574,7 @@ guint g_type_get_type_registration_serial (void);
|
|
|
1574
1574
|
* - the usual `my_app_window_get_type()` function is declared with a return type of #GType
|
|
1575
1575
|
*
|
|
1576
1576
|
* - the `MyAppWindow` type is defined as a `typedef` of `struct _MyAppWindow`. The struct itself is not
|
|
1577
|
-
* defined and should be defined from the
|
|
1577
|
+
* defined and should be defined from the `.c` file before `G_DEFINE_TYPE()` is used.
|
|
1578
1578
|
*
|
|
1579
1579
|
* - the `MY_APP_WINDOW()` cast is emitted as `static inline` function along with the `MY_APP_IS_WINDOW()` type
|
|
1580
1580
|
* checking function
|
|
@@ -1585,9 +1585,9 @@ guint g_type_get_type_registration_serial (void);
|
|
|
1585
1585
|
* and therefore the fact that the size of the class structure is exposed is not a concern and it can be
|
|
1586
1586
|
* freely changed at any point in the future.
|
|
1587
1587
|
*
|
|
1588
|
-
* - g_autoptr() support being added for your type, based on the type of your parent class
|
|
1588
|
+
* - `g_autoptr()` support being added for your type, based on the type of your parent class
|
|
1589
1589
|
*
|
|
1590
|
-
* You can only use this function if your parent type also supports g_autoptr()
|
|
1590
|
+
* You can only use this function if your parent type also supports `g_autoptr()`.
|
|
1591
1591
|
*
|
|
1592
1592
|
* Because the type macro (`MY_APP_TYPE_WINDOW` in the above example) is not a callable, you must continue to
|
|
1593
1593
|
* manually define this as a macro for yourself.
|
|
@@ -1595,11 +1595,11 @@ guint g_type_get_type_registration_serial (void);
|
|
|
1595
1595
|
* The declaration of the `_get_type()` function is the first thing emitted by the macro. This allows this macro
|
|
1596
1596
|
* to be used in the usual way with export control and API versioning macros.
|
|
1597
1597
|
*
|
|
1598
|
-
* If you want to declare your own class structure, use
|
|
1598
|
+
* If you want to declare your own class structure, use [func@GObject.DECLARE_DERIVABLE_TYPE].
|
|
1599
1599
|
*
|
|
1600
1600
|
* If you are writing a library, it is important to note that it is possible to convert a type from using
|
|
1601
|
-
* G_DECLARE_FINAL_TYPE() to G_DECLARE_DERIVABLE_TYPE() without breaking API or ABI. As a precaution, you
|
|
1602
|
-
* should therefore use G_DECLARE_FINAL_TYPE() until you are sure that it makes sense for your class to be
|
|
1601
|
+
* `G_DECLARE_FINAL_TYPE()` to `G_DECLARE_DERIVABLE_TYPE()` without breaking API or ABI. As a precaution, you
|
|
1602
|
+
* should therefore use `G_DECLARE_FINAL_TYPE()` until you are sure that it makes sense for your class to be
|
|
1603
1603
|
* subclassed. Once a class structure has been exposed it is not possible to change its size or remove or
|
|
1604
1604
|
* reorder items without breaking the API and/or ABI.
|
|
1605
1605
|
*
|
|
@@ -1687,7 +1687,7 @@ guint g_type_get_type_registration_serial (void);
|
|
|
1687
1687
|
*
|
|
1688
1688
|
* - g_autoptr() support being added for your type, based on the type of your parent class
|
|
1689
1689
|
*
|
|
1690
|
-
* You can only use this function if your parent type also supports g_autoptr()
|
|
1690
|
+
* You can only use this function if your parent type also supports `g_autoptr()`.
|
|
1691
1691
|
*
|
|
1692
1692
|
* Because the type macro (`GTK_TYPE_FROBBER` in the above example) is not a callable, you must continue to
|
|
1693
1693
|
* manually define this as a macro for yourself.
|
|
@@ -1696,14 +1696,14 @@ guint g_type_get_type_registration_serial (void);
|
|
|
1696
1696
|
* to be used in the usual way with export control and API versioning macros.
|
|
1697
1697
|
*
|
|
1698
1698
|
* If you are writing a library, it is important to note that it is possible to convert a type from using
|
|
1699
|
-
*
|
|
1700
|
-
* should therefore use G_DECLARE_FINAL_TYPE() until you are sure that it makes sense for your class to be
|
|
1699
|
+
* [func@GObject.DECLARE_FINAL_TYPE] to `G_DECLARE_DERIVABLE_TYPE()` without breaking API or ABI. As a precaution, you
|
|
1700
|
+
* should therefore use `G_DECLARE_FINAL_TYPE()` until you are sure that it makes sense for your class to be
|
|
1701
1701
|
* subclassed. Once a class structure has been exposed it is not possible to change its size or remove or
|
|
1702
1702
|
* reorder items without breaking the API and/or ABI. If you want to declare your own class structure, use
|
|
1703
|
-
* G_DECLARE_DERIVABLE_TYPE()
|
|
1704
|
-
* structures, use G_DECLARE_FINAL_TYPE()
|
|
1703
|
+
* `G_DECLARE_DERIVABLE_TYPE()`. If you want to declare a class without exposing the class or instance
|
|
1704
|
+
* structures, use `G_DECLARE_FINAL_TYPE()`.
|
|
1705
1705
|
*
|
|
1706
|
-
* If you must use G_DECLARE_DERIVABLE_TYPE() you should be sure to include some padding at the bottom of your
|
|
1706
|
+
* If you must use `G_DECLARE_DERIVABLE_TYPE()` you should be sure to include some padding at the bottom of your
|
|
1707
1707
|
* class structure to leave space for the addition of future virtual functions.
|
|
1708
1708
|
*
|
|
1709
1709
|
* Since: 2.44
|
|
@@ -1931,9 +1931,9 @@ guint g_type_get_type_registration_serial (void);
|
|
|
1931
1931
|
*
|
|
1932
1932
|
* A convenience macro for type implementations.
|
|
1933
1933
|
*
|
|
1934
|
-
* Similar to
|
|
1934
|
+
* Similar to [func@GObject.DEFINE_TYPE], but defines a final type.
|
|
1935
1935
|
*
|
|
1936
|
-
* See
|
|
1936
|
+
* See [func@GObject.DEFINE_TYPE_EXTENDED] for an example.
|
|
1937
1937
|
*
|
|
1938
1938
|
* Since: 2.70
|
|
1939
1939
|
*/
|