diff options
author | Colin Walters <walters@verbum.org> | 2013-04-19 19:12:14 -0400 |
---|---|---|
committer | Colin Walters <walters@verbum.org> | 2013-04-19 19:13:06 -0400 |
commit | a09072bd1f75dfc7497ed599e03e331bff411fd4 (patch) | |
tree | 9eefe6a0332f426c7b825eec746a8598cf0f14e1 | |
parent | 80a13ef73bbb32c85e00ff8e7870a5d4723c2196 (diff) | |
download | gobject-introspection-a09072bd1f75dfc7497ed599e03e331bff411fd4.tar.gz |
tests: Add a struct with fixed-size gchar
See https://bugzilla.redhat.com/920595
-rw-r--r-- | tests/scanner/Regress-1.0-expected.gir | 21 | ||||
-rw-r--r-- | tests/scanner/regress.c | 8 | ||||
-rw-r--r-- | tests/scanner/regress.h | 7 |
3 files changed, 36 insertions, 0 deletions
diff --git a/tests/scanner/Regress-1.0-expected.gir b/tests/scanner/Regress-1.0-expected.gir index 2d8091b5..0dadc59c 100644 --- a/tests/scanner/Regress-1.0-expected.gir +++ b/tests/scanner/Regress-1.0-expected.gir @@ -1946,6 +1946,27 @@ exposed to language bindings.</doc> <type name="gdouble" c:type="double"/> </field> </record> + <record name="LikeXklConfigItem" c:type="RegressLikeXklConfigItem"> + <field name="name" writable="1"> + <array zero-terminated="0" c:type="gchar" fixed-size="32"> + <type name="gchar" c:type="gchar"/> + </array> + </field> + <method name="set_name" + c:identifier="regress_like_xkl_config_item_set_name"> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <instance-parameter name="self" transfer-ownership="none"> + <type name="LikeXklConfigItem" c:type="RegressLikeXklConfigItem*"/> + </instance-parameter> + <parameter name="name" transfer-ownership="none"> + <type name="utf8" c:type="const char*"/> + </parameter> + </parameters> + </method> + </record> <constant name="MAXUINT64" value="18446744073709551615" c:type="REGRESS_MAXUINT64"> diff --git a/tests/scanner/regress.c b/tests/scanner/regress.c index f54c2f91..d32c52be 100644 --- a/tests/scanner/regress.c +++ b/tests/scanner/regress.c @@ -4007,3 +4007,11 @@ void regress_test_versioning (void) { } + +void +regress_like_xkl_config_item_set_name (RegressLikeXklConfigItem *self, + const char *name) +{ + strncpy (self->name, name, sizeof (self->name) - 1); + self->name[sizeof(self->name)-1] = '\0'; +} diff --git a/tests/scanner/regress.h b/tests/scanner/regress.h index ba82ca83..adc05dbc 100644 --- a/tests/scanner/regress.h +++ b/tests/scanner/regress.h @@ -905,6 +905,13 @@ typedef struct { void regress_test_struct_fixed_array_frob (RegressTestStructFixedArray *str); +typedef struct { + gchar name[32]; +} RegressLikeXklConfigItem; + +void regress_like_xkl_config_item_set_name (RegressLikeXklConfigItem *self, + const char *name); + #define REGRESS_UTF8_CONSTANT "const \xe2\x99\xa5 utf8" #ifdef __GNUC__ |