@img/sharp-libvips-dev-wasm32 1.3.0-rc.1 → 1.3.0-rc.10
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/README.md +23 -23
- 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 +15 -3
- package/include/expat_config.h +6 -6
- package/include/expat_external.h +4 -4
- package/include/glib-2.0/gio/gdbusconnection.h +2 -8
- package/include/glib-2.0/gio/gfileattribute.h +1 -1
- package/include/glib-2.0/gio/gfileinfo.h +5 -0
- package/include/glib-2.0/gio/gicon.h +1 -1
- package/include/glib-2.0/gio/gio-autocleanups.h +0 -1
- package/include/glib-2.0/gio/gio-visibility.h +34 -0
- package/include/glib-2.0/gio/gio.h +2 -0
- package/include/glib-2.0/gio/gioenums.h +66 -44
- package/include/glib-2.0/gio/gioenumtypes.h +2 -0
- package/include/glib-2.0/gio/giptosmessage.h +46 -0
- package/include/glib-2.0/gio/gipv6tclassmessage.h +46 -0
- package/include/glib-2.0/gio/gresolver.h +1 -1
- package/include/glib-2.0/gio/gsettings.h +1 -1
- package/include/glib-2.0/gio/gsocketcontrolmessage.h +2 -0
- package/include/glib-2.0/glib/gatomic.h +26 -2
- package/include/glib-2.0/glib/gfileutils.h +2 -2
- package/include/glib-2.0/glib/ghook.h +3 -1
- package/include/glib-2.0/glib/giochannel.h +1 -1
- package/include/glib-2.0/glib/gkeyfile.h +1 -1
- package/include/glib-2.0/glib/glib-visibility.h +34 -0
- package/include/glib-2.0/glib/gmacros.h +32 -0
- package/include/glib-2.0/glib/gmain.h +4 -0
- package/include/glib-2.0/glib/gmarkup.h +18 -1
- package/include/glib-2.0/glib/gmem.h +4 -4
- package/include/glib-2.0/glib/gmessages.h +7 -9
- package/include/glib-2.0/glib/gnode.h +1 -1
- package/include/glib-2.0/glib/goption.h +1 -1
- package/include/glib-2.0/glib/gsequence.h +2 -2
- package/include/glib-2.0/glib/gslice.h +12 -4
- package/include/glib-2.0/glib/gspawn.h +1 -1
- package/include/glib-2.0/glib/gstrfuncs.h +191 -1
- package/include/glib-2.0/glib/gtestutils.h +6 -3
- package/include/glib-2.0/glib/gtimer.h +1 -0
- package/include/glib-2.0/glib/guri.h +3 -3
- package/include/glib-2.0/glib/gutils.h +10 -1
- package/include/glib-2.0/glib/gvarianttype.h +16 -16
- package/include/glib-2.0/glib/gversionmacros.h +22 -0
- package/include/glib-2.0/gmodule/gmodule-visibility.h +34 -0
- package/include/glib-2.0/gmodule.h +1 -1
- package/include/glib-2.0/gobject/gbinding.h +1 -1
- package/include/glib-2.0/gobject/gobject-visibility.h +34 -0
- package/include/glib-2.0/gobject/gobject.h +1 -1
- package/include/glib-2.0/gobject/gparam.h +1 -1
- package/include/glib-2.0/gobject/gsignal.h +8 -8
- package/include/glib-2.0/gobject/gtype.h +17 -17
- package/include/hwy/aligned_allocator.h +44 -2
- package/include/hwy/auto_tune.h +22 -6
- package/include/hwy/base.h +60 -90
- package/include/hwy/bit_set.h +410 -0
- package/include/hwy/cache_control.h +3 -2
- package/include/hwy/detect_compiler_arch.h +134 -14
- package/include/hwy/detect_targets.h +82 -36
- package/include/hwy/highway.h +15 -0
- package/include/hwy/nanobenchmark.h +12 -3
- package/include/hwy/ops/arm_neon-inl.h +96 -25
- package/include/hwy/ops/arm_sve-inl.h +250 -95
- package/include/hwy/ops/emu128-inl.h +12 -7
- package/include/hwy/ops/generic_ops-inl.h +271 -131
- package/include/hwy/ops/loongarch_lasx-inl.h +31 -9
- package/include/hwy/ops/loongarch_lsx-inl.h +33 -12
- package/include/hwy/ops/ppc_vsx-inl.h +99 -19
- package/include/hwy/ops/rvv-inl.h +239 -130
- package/include/hwy/ops/scalar-inl.h +22 -7
- package/include/hwy/ops/set_macros-inl.h +163 -107
- package/include/hwy/ops/wasm_128-inl.h +13 -22
- package/include/hwy/ops/x86_128-inl.h +223 -120
- package/include/hwy/ops/x86_256-inl.h +70 -134
- package/include/hwy/ops/x86_512-inl.h +130 -134
- package/include/hwy/print-inl.h +2 -0
- package/include/hwy/profiler.h +355 -264
- package/include/hwy/robust_statistics.h +3 -1
- package/include/hwy/timer.h +44 -0
- package/include/lcms2.h +35 -5
- package/include/lcms2_plugin.h +1 -1
- package/include/libexif/exif-utils.h +1 -1
- package/include/libheif/heif.h +2 -0
- package/include/libheif/heif_aux_images.h +2 -2
- package/include/libheif/heif_brands.h +16 -4
- package/include/libheif/heif_color.h +147 -25
- package/include/libheif/heif_components.h +264 -0
- package/include/libheif/heif_context.h +18 -4
- package/include/libheif/heif_cxx.h +20 -18
- package/include/libheif/heif_decoding.h +63 -9
- package/include/libheif/heif_encoding.h +46 -12
- package/include/libheif/heif_error.h +15 -6
- package/include/libheif/heif_export.h +48 -0
- package/include/libheif/heif_image.h +94 -32
- package/include/libheif/heif_image_handle.h +54 -3
- package/include/libheif/heif_items.h +25 -2
- package/include/libheif/heif_library.h +13 -18
- package/include/libheif/heif_metadata.h +5 -2
- package/include/libheif/heif_omaf.h +104 -0
- package/include/libheif/heif_plugin.h +80 -13
- package/include/libheif/heif_properties.h +259 -5
- package/include/libheif/heif_regions.h +5 -3
- package/include/libheif/heif_security.h +24 -2
- package/include/libheif/heif_sequences.h +163 -14
- package/include/libheif/heif_text.h +161 -0
- package/include/libheif/heif_tiling.h +2 -2
- package/include/libheif/heif_uncompressed.h +29 -5
- package/include/libheif/heif_version.h +2 -2
- package/include/libpng16/png.h +637 -488
- package/include/libpng16/pngconf.h +2 -2
- package/include/libpng16/pnglibconf.h +2 -2
- package/include/png.h +637 -488
- package/include/pngconf.h +2 -2
- package/include/pnglibconf.h +2 -2
- package/include/resvg.h +3 -3
- package/include/tiffconf.h +9 -10
- package/include/tiffio.h +10 -9
- package/include/tiffvers.h +1 -1
- package/include/ultrahdr_api.h +5 -11
- package/include/vips/colour.h +2 -2
- package/include/vips/memory.h +1 -1
- package/include/vips/version.h +4 -4
- package/include/zlib.h +3 -3
- package/lib/glib-2.0/include/glibconfig.h +1 -3
- package/lib/libaom.a +0 -0
- package/lib/libcgif.a +0 -0
- package/lib/libexif.a +0 -0
- package/lib/libexif.la +1 -1
- package/lib/libexpat.a +0 -0
- package/lib/libexpat.la +2 -2
- 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/libpng.la +2 -2
- package/lib/libpng16.a +0 -0
- package/lib/libpng16.la +2 -2
- 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/cgif.pc +1 -1
- 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/lcms2.pc +1 -1
- package/lib/pkgconfig/libexif.pc +1 -1
- package/lib/pkgconfig/libheif.pc +1 -1
- package/lib/pkgconfig/libhwy.pc +3 -4
- package/lib/pkgconfig/libpng.pc +1 -1
- package/lib/pkgconfig/libpng16.pc +1 -1
- package/lib/pkgconfig/libsharpyuv.pc +1 -1
- package/lib/pkgconfig/libtiff-4.pc +2 -2
- package/lib/pkgconfig/libwebp.pc +1 -1
- package/lib/pkgconfig/libwebpdecoder.pc +11 -0
- package/lib/pkgconfig/libwebpmux.pc +1 -1
- package/lib/pkgconfig/vips-cpp.pc +1 -1
- package/lib/pkgconfig/vips.pc +1 -1
- package/package.json +1 -1
- package/versions.json +15 -15
- package/lib/libsharpyuv.la +0 -41
- package/lib/libtiff.la +0 -41
- package/lib/libwebp.la +0 -41
- package/lib/libwebpdemux.la +0 -41
- package/lib/libwebpmux.la +0 -41
|
@@ -1120,3 +1120,37 @@
|
|
|
1120
1120
|
#define GLIB_AVAILABLE_ENUMERATOR_IN_2_88
|
|
1121
1121
|
#define GLIB_AVAILABLE_TYPE_IN_2_88
|
|
1122
1122
|
#endif
|
|
1123
|
+
|
|
1124
|
+
#if GLIB_VERSION_MIN_REQUIRED >= GLIB_VERSION_2_90
|
|
1125
|
+
#define GLIB_DEPRECATED_IN_2_90 GLIB_DEPRECATED
|
|
1126
|
+
#define GLIB_DEPRECATED_IN_2_90_FOR(f) GLIB_DEPRECATED_FOR (f)
|
|
1127
|
+
#define GLIB_DEPRECATED_MACRO_IN_2_90 GLIB_DEPRECATED_MACRO
|
|
1128
|
+
#define GLIB_DEPRECATED_MACRO_IN_2_90_FOR(f) GLIB_DEPRECATED_MACRO_FOR (f)
|
|
1129
|
+
#define GLIB_DEPRECATED_ENUMERATOR_IN_2_90 GLIB_DEPRECATED_ENUMERATOR
|
|
1130
|
+
#define GLIB_DEPRECATED_ENUMERATOR_IN_2_90_FOR(f) GLIB_DEPRECATED_ENUMERATOR_FOR (f)
|
|
1131
|
+
#define GLIB_DEPRECATED_TYPE_IN_2_90 GLIB_DEPRECATED_TYPE
|
|
1132
|
+
#define GLIB_DEPRECATED_TYPE_IN_2_90_FOR(f) GLIB_DEPRECATED_TYPE_FOR (f)
|
|
1133
|
+
#else
|
|
1134
|
+
#define GLIB_DEPRECATED_IN_2_90 _GLIB_EXTERN
|
|
1135
|
+
#define GLIB_DEPRECATED_IN_2_90_FOR(f) _GLIB_EXTERN
|
|
1136
|
+
#define GLIB_DEPRECATED_MACRO_IN_2_90
|
|
1137
|
+
#define GLIB_DEPRECATED_MACRO_IN_2_90_FOR(f)
|
|
1138
|
+
#define GLIB_DEPRECATED_ENUMERATOR_IN_2_90
|
|
1139
|
+
#define GLIB_DEPRECATED_ENUMERATOR_IN_2_90_FOR(f)
|
|
1140
|
+
#define GLIB_DEPRECATED_TYPE_IN_2_90
|
|
1141
|
+
#define GLIB_DEPRECATED_TYPE_IN_2_90_FOR(f)
|
|
1142
|
+
#endif
|
|
1143
|
+
|
|
1144
|
+
#if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_90
|
|
1145
|
+
#define GLIB_AVAILABLE_IN_2_90 GLIB_UNAVAILABLE (2, 90)
|
|
1146
|
+
#define GLIB_AVAILABLE_STATIC_INLINE_IN_2_90 GLIB_UNAVAILABLE_STATIC_INLINE (2, 90)
|
|
1147
|
+
#define GLIB_AVAILABLE_MACRO_IN_2_90 GLIB_UNAVAILABLE_MACRO (2, 90)
|
|
1148
|
+
#define GLIB_AVAILABLE_ENUMERATOR_IN_2_90 GLIB_UNAVAILABLE_ENUMERATOR (2, 90)
|
|
1149
|
+
#define GLIB_AVAILABLE_TYPE_IN_2_90 GLIB_UNAVAILABLE_TYPE (2, 90)
|
|
1150
|
+
#else
|
|
1151
|
+
#define GLIB_AVAILABLE_IN_2_90 _GLIB_EXTERN
|
|
1152
|
+
#define GLIB_AVAILABLE_STATIC_INLINE_IN_2_90
|
|
1153
|
+
#define GLIB_AVAILABLE_MACRO_IN_2_90
|
|
1154
|
+
#define GLIB_AVAILABLE_ENUMERATOR_IN_2_90
|
|
1155
|
+
#define GLIB_AVAILABLE_TYPE_IN_2_90
|
|
1156
|
+
#endif
|
|
@@ -779,6 +779,38 @@
|
|
|
779
779
|
#define GLIB_CANNOT_IGNORE_DEPRECATIONS
|
|
780
780
|
#endif
|
|
781
781
|
|
|
782
|
+
/**
|
|
783
|
+
* G_GNUC_FLAG_ENUM:
|
|
784
|
+
*
|
|
785
|
+
* Expands to the GNU C `flag_enum` attribute if the compiler is `gcc` or `clang`.
|
|
786
|
+
* This attribute indicates that an enumerated type is used in bitwise
|
|
787
|
+
* operations.
|
|
788
|
+
* It is sometimes used in static analysis.
|
|
789
|
+
*
|
|
790
|
+
* See the
|
|
791
|
+
* [GNU C documentation](https://gcc.gnu.org/onlinedocs/gcc/Common-Type-Attributes.html#index-flag_005fenum-type-attribute)
|
|
792
|
+
* for details.
|
|
793
|
+
*
|
|
794
|
+
* |[<!-- language="C" -->
|
|
795
|
+
* typedef enum {
|
|
796
|
+
* G_KEY_FILE_NONE = 0,
|
|
797
|
+
* G_KEY_FILE_KEEP_COMMENTS = 1 << 0,
|
|
798
|
+
* G_KEY_FILE_KEEP_TRANSLATIONS = 1 << 1
|
|
799
|
+
* } G_GNUC_FLAG_ENUM GKeyFileFlags;
|
|
800
|
+
* ]|
|
|
801
|
+
*
|
|
802
|
+
* The attribute can also be placed after `enum` and before the opening brace,
|
|
803
|
+
* but that may cause it to be misinterpreted as the name of the enum if the
|
|
804
|
+
* macro is not defined.
|
|
805
|
+
*
|
|
806
|
+
* Since: 2.88
|
|
807
|
+
*/
|
|
808
|
+
#if g_macro__has_attribute(flag_enum)
|
|
809
|
+
#define G_GNUC_FLAG_ENUM __attribute__((flag_enum))
|
|
810
|
+
#else
|
|
811
|
+
#define G_GNUC_FLAG_ENUM
|
|
812
|
+
#endif
|
|
813
|
+
|
|
782
814
|
/**
|
|
783
815
|
* G_GNUC_MAY_ALIAS:
|
|
784
816
|
*
|
|
@@ -28,6 +28,8 @@
|
|
|
28
28
|
#include <glib/gslist.h>
|
|
29
29
|
#include <glib/gthread.h>
|
|
30
30
|
|
|
31
|
+
#include <stdint.h>
|
|
32
|
+
|
|
31
33
|
G_BEGIN_DECLS
|
|
32
34
|
|
|
33
35
|
typedef enum /*< flags >*/
|
|
@@ -830,6 +832,8 @@ G_GNUC_END_IGNORE_DEPRECATIONS
|
|
|
830
832
|
|
|
831
833
|
GLIB_AVAILABLE_IN_ALL
|
|
832
834
|
gint64 g_get_monotonic_time (void);
|
|
835
|
+
GLIB_AVAILABLE_IN_2_88
|
|
836
|
+
uint64_t g_get_monotonic_time_ns (void);
|
|
833
837
|
GLIB_AVAILABLE_IN_ALL
|
|
834
838
|
gint64 g_get_real_time (void);
|
|
835
839
|
|
|
@@ -102,7 +102,7 @@ typedef enum
|
|
|
102
102
|
G_MARKUP_TREAT_CDATA_AS_TEXT = 1 << 1,
|
|
103
103
|
G_MARKUP_PREFIX_ERROR_POSITION = 1 << 2,
|
|
104
104
|
G_MARKUP_IGNORE_QUALIFIED = 1 << 3
|
|
105
|
-
} GMarkupParseFlags;
|
|
105
|
+
} G_GNUC_FLAG_ENUM GMarkupParseFlags;
|
|
106
106
|
|
|
107
107
|
/**
|
|
108
108
|
* GMarkupParseContext:
|
|
@@ -229,6 +229,23 @@ void g_markup_parse_context_get_position (GMarkupParseContext *c
|
|
|
229
229
|
gint *char_number);
|
|
230
230
|
GLIB_AVAILABLE_IN_2_88
|
|
231
231
|
gsize g_markup_parse_context_get_offset (GMarkupParseContext *context);
|
|
232
|
+
|
|
233
|
+
GLIB_AVAILABLE_IN_2_88
|
|
234
|
+
void g_markup_parse_context_get_tag_start (GMarkupParseContext *context,
|
|
235
|
+
gsize *line_number,
|
|
236
|
+
gsize *char_number,
|
|
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);
|
|
248
|
+
|
|
232
249
|
GLIB_AVAILABLE_IN_ALL
|
|
233
250
|
gpointer g_markup_parse_context_get_user_data (GMarkupParseContext *context);
|
|
234
251
|
|
|
@@ -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>
|
|
@@ -67,7 +68,7 @@ typedef enum
|
|
|
67
68
|
G_LOG_LEVEL_DEBUG = 1 << 7,
|
|
68
69
|
|
|
69
70
|
G_LOG_LEVEL_MASK = ~(G_LOG_FLAG_RECURSION | G_LOG_FLAG_FATAL)
|
|
70
|
-
} GLogLevelFlags;
|
|
71
|
+
} G_GNUC_FLAG_ENUM GLogLevelFlags;
|
|
71
72
|
|
|
72
73
|
/* GLib log levels that are considered fatal by default */
|
|
73
74
|
#define G_LOG_FATAL_MASK (G_LOG_FLAG_RECURSION | G_LOG_LEVEL_ERROR)
|
|
@@ -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 */
|
|
@@ -45,21 +45,29 @@ GLIB_AVAILABLE_IN_ALL
|
|
|
45
45
|
void g_slice_free_chain_with_offset (gsize block_size,
|
|
46
46
|
gpointer mem_chain,
|
|
47
47
|
gsize next_offset);
|
|
48
|
-
|
|
48
|
+
|
|
49
|
+
#ifndef __GI_SCANNER__
|
|
50
|
+
/* Private helper to give the allocation size for a struct — we want to
|
|
51
|
+
* guarantee non-empty allocations, so it returns a minimum of 1B. This is
|
|
52
|
+
* necessary because some compilers do allow empty (zero size) structs. */
|
|
53
|
+
#define g_slice_alloc_size(type) (sizeof (type) > 0 ? sizeof (type) : 1)
|
|
54
|
+
#endif
|
|
55
|
+
|
|
56
|
+
#define g_slice_new(type) ((type*) g_slice_alloc (g_slice_alloc_size (type)))
|
|
49
57
|
|
|
50
58
|
/* Allow the compiler to inline memset(). Since the size is a constant, this
|
|
51
59
|
* can significantly improve performance. */
|
|
52
60
|
#if defined (__GNUC__) && (__GNUC__ >= 2) && defined (__OPTIMIZE__)
|
|
53
61
|
# define g_slice_new0(type) \
|
|
54
62
|
(type *) (G_GNUC_EXTENSION ({ \
|
|
55
|
-
gsize __s =
|
|
63
|
+
gsize __s = g_slice_alloc_size (type); \
|
|
56
64
|
gpointer __p; \
|
|
57
65
|
__p = g_slice_alloc (__s); \
|
|
58
66
|
memset (__p, 0, __s); \
|
|
59
67
|
__p; \
|
|
60
68
|
}))
|
|
61
69
|
#else
|
|
62
|
-
# define g_slice_new0(type) ((type*) g_slice_alloc0 (
|
|
70
|
+
# define g_slice_new0(type) ((type*) g_slice_alloc0 (g_slice_alloc_size (type)))
|
|
63
71
|
#endif
|
|
64
72
|
|
|
65
73
|
/* MemoryBlockType *
|
|
@@ -76,7 +84,7 @@ void g_slice_free_chain_with_offset (gsize block_size,
|
|
|
76
84
|
|
|
77
85
|
/* we go through extra hoops to ensure type safety */
|
|
78
86
|
#define g_slice_dup(type, mem) \
|
|
79
|
-
(1 ? (type*) g_slice_copy (
|
|
87
|
+
(1 ? (type*) g_slice_copy (g_slice_alloc_size (type), (mem)) \
|
|
80
88
|
: ((void) ((type*) 0 == (mem)), (type*) 0))
|
|
81
89
|
#define g_slice_free(type, mem) \
|
|
82
90
|
G_STMT_START { \
|
|
@@ -54,7 +54,7 @@ typedef enum {
|
|
|
54
54
|
G_ASCII_SPACE = 1 << 8,
|
|
55
55
|
G_ASCII_UPPER = 1 << 9,
|
|
56
56
|
G_ASCII_XDIGIT = 1 << 10
|
|
57
|
-
} GAsciiType;
|
|
57
|
+
} G_GNUC_FLAG_ENUM GAsciiType;
|
|
58
58
|
|
|
59
59
|
GLIB_VAR const guint16 * const g_ascii_table;
|
|
60
60
|
|
|
@@ -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__ */
|
|
@@ -526,7 +526,7 @@ typedef enum {
|
|
|
526
526
|
G_TEST_TRAP_SILENCE_STDOUT = 1 << 7,
|
|
527
527
|
G_TEST_TRAP_SILENCE_STDERR = 1 << 8,
|
|
528
528
|
G_TEST_TRAP_INHERIT_STDIN = 1 << 9
|
|
529
|
-
} GTestTrapFlags GLIB_DEPRECATED_TYPE_IN_2_38_FOR(GTestSubprocessFlags);
|
|
529
|
+
} G_GNUC_FLAG_ENUM GTestTrapFlags GLIB_DEPRECATED_TYPE_IN_2_38_FOR(GTestSubprocessFlags);
|
|
530
530
|
|
|
531
531
|
G_GNUC_BEGIN_IGNORE_DEPRECATIONS
|
|
532
532
|
|
|
@@ -540,8 +540,9 @@ typedef enum {
|
|
|
540
540
|
G_TEST_SUBPROCESS_DEFAULT GLIB_AVAILABLE_ENUMERATOR_IN_2_74 = 0,
|
|
541
541
|
G_TEST_SUBPROCESS_INHERIT_STDIN = 1 << 0,
|
|
542
542
|
G_TEST_SUBPROCESS_INHERIT_STDOUT = 1 << 1,
|
|
543
|
-
G_TEST_SUBPROCESS_INHERIT_STDERR = 1 << 2
|
|
544
|
-
|
|
543
|
+
G_TEST_SUBPROCESS_INHERIT_STDERR = 1 << 2,
|
|
544
|
+
G_TEST_SUBPROCESS_INHERIT_DESCRIPTORS GLIB_AVAILABLE_ENUMERATOR_IN_2_88 = 1 << 3,
|
|
545
|
+
} G_GNUC_FLAG_ENUM GTestSubprocessFlags;
|
|
545
546
|
|
|
546
547
|
GLIB_AVAILABLE_IN_2_38
|
|
547
548
|
void g_test_trap_subprocess (const char *test_path,
|
|
@@ -555,6 +556,8 @@ void g_test_trap_subprocess_with_envp (const char *test_path,
|
|
|
555
556
|
|
|
556
557
|
GLIB_AVAILABLE_IN_ALL
|
|
557
558
|
gboolean g_test_trap_has_passed (void);
|
|
559
|
+
GLIB_AVAILABLE_IN_2_88
|
|
560
|
+
gboolean g_test_trap_has_skipped (void);
|
|
558
561
|
GLIB_AVAILABLE_IN_ALL
|
|
559
562
|
gboolean g_test_trap_reached_timeout (void);
|
|
560
563
|
#define g_test_trap_assert_passed() g_test_trap_assertions (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, 0, 0)
|
|
@@ -90,7 +90,7 @@ typedef enum {
|
|
|
90
90
|
G_URI_FLAGS_ENCODED_PATH = 1 << 6,
|
|
91
91
|
G_URI_FLAGS_ENCODED_FRAGMENT = 1 << 7,
|
|
92
92
|
G_URI_FLAGS_SCHEME_NORMALIZE GLIB_AVAILABLE_ENUMERATOR_IN_2_68 = 1 << 8,
|
|
93
|
-
} GUriFlags;
|
|
93
|
+
} G_GNUC_FLAG_ENUM GUriFlags;
|
|
94
94
|
|
|
95
95
|
GLIB_AVAILABLE_IN_2_66
|
|
96
96
|
gboolean g_uri_split (const gchar *uri_ref,
|
|
@@ -211,7 +211,7 @@ typedef enum {
|
|
|
211
211
|
G_URI_HIDE_AUTH_PARAMS = 1 << 2,
|
|
212
212
|
G_URI_HIDE_QUERY = 1 << 3,
|
|
213
213
|
G_URI_HIDE_FRAGMENT = 1 << 4,
|
|
214
|
-
} GUriHideFlags;
|
|
214
|
+
} G_GNUC_FLAG_ENUM GUriHideFlags;
|
|
215
215
|
|
|
216
216
|
GLIB_AVAILABLE_IN_2_66
|
|
217
217
|
char * g_uri_to_string (GUri *uri);
|
|
@@ -261,7 +261,7 @@ typedef enum {
|
|
|
261
261
|
G_URI_PARAMS_CASE_INSENSITIVE = 1 << 0,
|
|
262
262
|
G_URI_PARAMS_WWW_FORM = 1 << 1,
|
|
263
263
|
G_URI_PARAMS_PARSE_RELAXED = 1 << 2,
|
|
264
|
-
} GUriParamsFlags;
|
|
264
|
+
} G_GNUC_FLAG_ENUM GUriParamsFlags;
|
|
265
265
|
|
|
266
266
|
GLIB_AVAILABLE_IN_2_66
|
|
267
267
|
GHashTable *g_uri_parse_params (const gchar *params,
|
|
@@ -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
|
|
|
@@ -299,7 +308,7 @@ typedef enum
|
|
|
299
308
|
G_FORMAT_SIZE_BITS = 1 << 2,
|
|
300
309
|
G_FORMAT_SIZE_ONLY_VALUE GLIB_AVAILABLE_ENUMERATOR_IN_2_74 = 1 << 3,
|
|
301
310
|
G_FORMAT_SIZE_ONLY_UNIT GLIB_AVAILABLE_ENUMERATOR_IN_2_74 = 1 << 4
|
|
302
|
-
} GFormatSizeFlags;
|
|
311
|
+
} G_GNUC_FLAG_ENUM GFormatSizeFlags;
|
|
303
312
|
|
|
304
313
|
GLIB_AVAILABLE_IN_2_30
|
|
305
314
|
gchar *g_format_size_full (guint64 size,
|