glib2 3.3.2 → 3.3.3
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.
- checksums.yaml +4 -4
- data/ext/glib2/extconf.rb +4 -3
- data/ext/glib2/rbglib-gc.c +2 -1
- data/ext/glib2/rbglib.h +2 -2
- data/ext/glib2/rbglib_iochannel.c +19 -15
- data/ext/glib2/rbglib_pollfd.c +2 -2
- data/ext/glib2/rbglib_regex.c +3 -2
- data/ext/glib2/rbglib_ucs4.c +3 -3
- data/ext/glib2/rbglib_unicode.c +3 -3
- data/ext/glib2/rbglib_utf16.c +3 -3
- data/ext/glib2/rbglib_utils.c +3 -3
- data/ext/glib2/rbgobj_boxed.c +2 -1
- data/ext/glib2/rbgobj_enums.c +3 -2
- data/ext/glib2/rbgobj_flags.c +4 -3
- data/ext/glib2/rbgobj_object.c +8 -5
- data/ext/glib2/rbgobj_param.c +2 -1
- data/ext/glib2/rbgobj_signal.c +5 -4
- data/ext/glib2/rbgobj_valuearray.c +2 -2
- data/ext/glib2/rbgutil_list.c +3 -3
- data/glib2.gemspec +2 -2
- data/lib/gnome2/rake/external-package.rb +3 -209
- data/lib/gnome2/rake/native-binary-build-task.rb +1 -96
- data/lib/gnome2/rake/package-task.rb +3 -151
- data/lib/gnome2/rake/source-download-task.rb +1 -75
- data/lib/gnome2/rake/windows-binary-build-task.rb +1 -431
- data/lib/gnome2/rake/windows-binary-download-task.rb +1 -168
- data/lib/mkmf-gnome2.rb +13 -11
- data/test/test-file-utils.rb +15 -7
- data/test/test-spawn.rb +15 -4
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1f7cf87b441a08ee8539b6fe8047ac17ccbddf01192d9ebe639e61d4502b8db6
|
4
|
+
data.tar.gz: 2a2c83a5a84822a3407c4314f50fa1d813e86aa011b8505654e04f270bfa5af9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 628b45c99d217e5d5690e442b58332b9496c5d7fa8ec1e28305eb064a429ba5eb545ffffb4c0eba3b2cd16065fa3c92c11dc48451f5dbceca424300f2674f4de
|
7
|
+
data.tar.gz: 37ad935316cec032ccdfddafb295a34c07e6dad0f8e9826e0af0cc3d829bffd2a2d9b945bb562af2cf6ad70a95b78245121018026194260764783947b76634ec
|
data/ext/glib2/extconf.rb
CHANGED
@@ -14,8 +14,6 @@ package_id = "gobject-2.0"
|
|
14
14
|
|
15
15
|
require 'mkmf-gnome2'
|
16
16
|
|
17
|
-
setup_windows(module_name, base_dir)
|
18
|
-
|
19
17
|
unless required_pkg_config_package([package_id, 2, 12, 0],
|
20
18
|
:alt_linux => "glib2-devel",
|
21
19
|
:debian => "libglib2.0-dev",
|
@@ -65,12 +63,15 @@ ignore_headers = [
|
|
65
63
|
unless windows_platform?
|
66
64
|
ignore_headers << "gwin32.h"
|
67
65
|
end
|
66
|
+
if PKGConfig.check_version?(package_id, 2, 60, 0)
|
67
|
+
ignore_headers << "gunicode.h"
|
68
|
+
end
|
68
69
|
headers = include_paths.split.inject([]) do |result, path|
|
69
70
|
result + Dir.glob(File.join(path.sub(/^-I/, ""), "glib", "*.h"))
|
70
71
|
end.reject do |file|
|
71
72
|
ignore_headers.include?(File.basename(file))
|
72
73
|
end
|
73
|
-
include_paths = PKGConfig.cflags_only_I(
|
74
|
+
include_paths = PKGConfig.cflags_only_I(package_id)
|
74
75
|
headers = include_paths.split.inject(headers) do |result, path|
|
75
76
|
result + Dir.glob(File.join(path.sub(/^-I/, ""), "gobject", "gsignal.h"))
|
76
77
|
end
|
data/ext/glib2/rbglib-gc.c
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
2
|
/*
|
3
|
-
* Copyright (C) 2018 Ruby-GNOME2 Project Team
|
3
|
+
* Copyright (C) 2018-2019 Ruby-GNOME2 Project Team
|
4
4
|
*
|
5
5
|
* This library is free software; you can redistribute it and/or
|
6
6
|
* modify it under the terms of the GNU Lesser General Public
|
@@ -54,6 +54,7 @@ static const rb_data_type_t rbg_gc_marker_type = {
|
|
54
54
|
gc_marker_mark,
|
55
55
|
gc_marker_free,
|
56
56
|
NULL,
|
57
|
+
{0},
|
57
58
|
},
|
58
59
|
NULL,
|
59
60
|
NULL,
|
data/ext/glib2/rbglib.h
CHANGED
@@ -36,7 +36,7 @@ extern "C" {
|
|
36
36
|
|
37
37
|
#define RBGLIB_MAJOR_VERSION 3
|
38
38
|
#define RBGLIB_MINOR_VERSION 3
|
39
|
-
#define RBGLIB_MICRO_VERSION
|
39
|
+
#define RBGLIB_MICRO_VERSION 3
|
40
40
|
|
41
41
|
#ifndef RB_ZALLOC
|
42
42
|
# ifdef ZALLOC
|
@@ -155,7 +155,7 @@ extern "C" {
|
|
155
155
|
#define G_DEF_ERROR2(domain, name, module, parent) \
|
156
156
|
rbgerr_define_gerror(domain, name, module, parent, G_TYPE_INVALID)
|
157
157
|
|
158
|
-
#
|
158
|
+
#ifdef G_PLATFORM_WIN32
|
159
159
|
# ifdef RUBY_GLIB2_COMPILATION
|
160
160
|
# define RUBY_GLIB2_VAR __declspec(dllexport)
|
161
161
|
# else
|
@@ -1,6 +1,6 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
2
|
/*
|
3
|
-
* Copyright (C) 2011-
|
3
|
+
* Copyright (C) 2011-2019 Ruby-GNOME2 Project Team
|
4
4
|
* Copyright (C) 2005 Masao Mutoh
|
5
5
|
*
|
6
6
|
* This library is free software; you can redistribute it and/or
|
@@ -247,19 +247,20 @@ rg_readline(gint argc, VALUE *argv, VALUE self)
|
|
247
247
|
|
248
248
|
rb_scan_args(argc, argv, "01", &line_term);
|
249
249
|
|
250
|
-
if (!
|
250
|
+
if (!NIL_P(line_term)) {
|
251
251
|
StringValue(line_term);
|
252
252
|
old_line_term = g_io_channel_get_line_term(_SELF(self), &old_line_term_len);
|
253
253
|
|
254
|
-
g_io_channel_set_line_term(_SELF(self),
|
255
|
-
|
254
|
+
g_io_channel_set_line_term(_SELF(self),
|
255
|
+
StringValuePtr(line_term),
|
256
|
+
(gint)RSTRING_LEN(line_term));
|
256
257
|
}
|
257
258
|
|
258
259
|
status = g_io_channel_read_line(_SELF(self), &str, NULL, NULL, &err);
|
259
260
|
|
260
|
-
if (!
|
261
|
+
if (!NIL_P(line_term)) {
|
261
262
|
g_io_channel_set_line_term(_SELF(self), old_line_term, old_line_term_len);
|
262
|
-
}
|
263
|
+
}
|
263
264
|
|
264
265
|
ioc_error(status, err);
|
265
266
|
|
@@ -282,19 +283,20 @@ rg_gets(gint argc, VALUE *argv, VALUE self)
|
|
282
283
|
|
283
284
|
rb_scan_args(argc, argv, "01", &line_term);
|
284
285
|
|
285
|
-
if (!
|
286
|
+
if (!NIL_P(line_term)) {
|
286
287
|
StringValue(line_term);
|
287
288
|
|
288
289
|
old_line_term = g_io_channel_get_line_term(_SELF(self), &old_line_term_len);
|
289
|
-
g_io_channel_set_line_term(_SELF(self),
|
290
|
-
|
290
|
+
g_io_channel_set_line_term(_SELF(self),
|
291
|
+
StringValuePtr(line_term),
|
292
|
+
(gint)RSTRING_LEN(line_term));
|
291
293
|
}
|
292
294
|
|
293
295
|
status = g_io_channel_read_line(_SELF(self), &str, NULL, NULL, &err);
|
294
296
|
|
295
|
-
if (! NIL_P(line_term)){
|
297
|
+
if (! NIL_P(line_term)) {
|
296
298
|
g_io_channel_set_line_term(_SELF(self), old_line_term, old_line_term_len);
|
297
|
-
}
|
299
|
+
}
|
298
300
|
|
299
301
|
if (status == G_IO_STATUS_EOF){
|
300
302
|
ret = Qnil;
|
@@ -317,8 +319,9 @@ ioc_set_line_term(VALUE args)
|
|
317
319
|
|
318
320
|
if (doit == Qtrue){
|
319
321
|
StringValue(line_term);
|
320
|
-
g_io_channel_set_line_term(_SELF(self),
|
321
|
-
|
322
|
+
g_io_channel_set_line_term(_SELF(self),
|
323
|
+
StringValuePtr(line_term),
|
324
|
+
(gint)RSTRING_LEN(line_term));
|
322
325
|
}
|
323
326
|
return self;
|
324
327
|
}
|
@@ -345,8 +348,9 @@ rg_each(gint argc, VALUE *argv, VALUE self)
|
|
345
348
|
StringValue(line_term);
|
346
349
|
|
347
350
|
old_line_term = g_io_channel_get_line_term(channel, &old_line_term_len);
|
348
|
-
g_io_channel_set_line_term(channel,
|
349
|
-
|
351
|
+
g_io_channel_set_line_term(channel,
|
352
|
+
StringValuePtr(line_term),
|
353
|
+
(gint)RSTRING_LEN(line_term));
|
350
354
|
}
|
351
355
|
|
352
356
|
while (TRUE) {
|
data/ext/glib2/rbglib_pollfd.c
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
2
|
/*
|
3
|
-
* Copyright (C) 2011 Ruby-GNOME2 Project Team
|
3
|
+
* Copyright (C) 2011-2019 Ruby-GNOME2 Project Team
|
4
4
|
* Copyright (C) 2005 Masao Mutoh
|
5
5
|
*
|
6
6
|
* This library is free software; you can redistribute it and/or
|
@@ -63,7 +63,7 @@ rg_initialize(VALUE self, VALUE fd, VALUE events, VALUE revents)
|
|
63
63
|
static VALUE
|
64
64
|
rg_set_fd(VALUE self, VALUE fd)
|
65
65
|
{
|
66
|
-
_SELF(self)->fd = fd;
|
66
|
+
_SELF(self)->fd = NUM2INT(fd);
|
67
67
|
return self;
|
68
68
|
}
|
69
69
|
static VALUE
|
data/ext/glib2/rbglib_regex.c
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
/*
|
2
|
-
* Copyright (C) 2015-
|
2
|
+
* Copyright (C) 2015-2019 Ruby-GNOME2 Project Team
|
3
3
|
*
|
4
4
|
* This library is free software; you can redistribute it and/or
|
5
5
|
* modify it under the terms of the GNU Lesser General Public
|
@@ -428,7 +428,8 @@ rg_replace(gint argc, VALUE *argv, VALUE self)
|
|
428
428
|
static VALUE
|
429
429
|
rg_s_escape_string(G_GNUC_UNUSED VALUE self, VALUE string)
|
430
430
|
{
|
431
|
-
return CSTR2RVAL(g_regex_escape_string(RVAL2CSTR(string),
|
431
|
+
return CSTR2RVAL(g_regex_escape_string(RVAL2CSTR(string),
|
432
|
+
(gint)RSTRING_LEN(string)));
|
432
433
|
}
|
433
434
|
|
434
435
|
static VALUE
|
data/ext/glib2/rbglib_ucs4.c
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
2
|
/*
|
3
|
-
* Copyright (C) 2011 Ruby-GNOME2 Project Team
|
3
|
+
* Copyright (C) 2011-2019 Ruby-GNOME2 Project Team
|
4
4
|
* Copyright (C) 2006 Kouhei Sutou
|
5
5
|
*
|
6
6
|
* This library is free software; you can redistribute it and/or
|
@@ -33,7 +33,7 @@ rg_s_to_utf16(G_GNUC_UNUSED VALUE self, VALUE rb_ucs4)
|
|
33
33
|
glong len, items_written;
|
34
34
|
GError *error = NULL;
|
35
35
|
|
36
|
-
ucs4 = (gunichar *)StringValuePtr(rb_ucs4);
|
36
|
+
ucs4 = (gunichar *)(void *)StringValuePtr(rb_ucs4);
|
37
37
|
len = RSTRING_LEN(rb_ucs4) / sizeof(*ucs4);
|
38
38
|
|
39
39
|
utf16 = g_ucs4_to_utf16(ucs4, len, NULL, &items_written, &error);
|
@@ -56,7 +56,7 @@ rg_s_to_utf8(G_GNUC_UNUSED VALUE self, VALUE rb_ucs4)
|
|
56
56
|
glong len, items_written;
|
57
57
|
GError *error = NULL;
|
58
58
|
|
59
|
-
ucs4 = (gunichar *)StringValuePtr(rb_ucs4);
|
59
|
+
ucs4 = (gunichar *)(void *)StringValuePtr(rb_ucs4);
|
60
60
|
len = RSTRING_LEN(rb_ucs4) / sizeof(*ucs4);
|
61
61
|
|
62
62
|
utf8 = g_ucs4_to_utf8(ucs4, len, NULL, &items_written, &error);
|
data/ext/glib2/rbglib_unicode.c
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
2
|
/*
|
3
|
-
* Copyright (C) 2011 Ruby-GNOME2 Project Team
|
3
|
+
* Copyright (C) 2011-2019 Ruby-GNOME2 Project Team
|
4
4
|
* Copyright (C) 2006 Kouhei Sutou
|
5
5
|
*
|
6
6
|
* This library is free software; you can redistribute it and/or
|
@@ -38,11 +38,11 @@ rg_s_canonical_ordering(G_GNUC_UNUSED VALUE self, VALUE rb_ucs4)
|
|
38
38
|
VALUE normalized_ucs4;
|
39
39
|
gchar *original_str;
|
40
40
|
gunichar *ucs4;
|
41
|
-
|
41
|
+
long len;
|
42
42
|
|
43
43
|
original_str = StringValuePtr(rb_ucs4);
|
44
44
|
len = RSTRING_LEN(rb_ucs4);
|
45
|
-
ucs4 = g_memdup(original_str, len);
|
45
|
+
ucs4 = g_memdup(original_str, (guint)len);
|
46
46
|
g_unicode_canonical_ordering(ucs4, len);
|
47
47
|
normalized_ucs4 = CSTR2RVAL_LEN_UCS4((const char *)ucs4, len);
|
48
48
|
g_free(ucs4);
|
data/ext/glib2/rbglib_utf16.c
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
2
|
/*
|
3
|
-
* Copyright (C) 2011 Ruby-GNOME2 Project Team
|
3
|
+
* Copyright (C) 2011-2019 Ruby-GNOME2 Project Team
|
4
4
|
* Copyright (C) 2006 Kouhei Sutou
|
5
5
|
*
|
6
6
|
* This library is free software; you can redistribute it and/or
|
@@ -33,7 +33,7 @@ rg_s_to_ucs4(G_GNUC_UNUSED VALUE self, VALUE rb_utf16)
|
|
33
33
|
glong len, items_written;
|
34
34
|
GError *error = NULL;
|
35
35
|
|
36
|
-
utf16 = (gunichar2 *)StringValueCStr(rb_utf16);
|
36
|
+
utf16 = (gunichar2 *)(void *)StringValueCStr(rb_utf16);
|
37
37
|
len = RSTRING_LEN(rb_utf16) / sizeof(*utf16);
|
38
38
|
|
39
39
|
ucs4 = g_utf16_to_ucs4(utf16, len, NULL, &items_written, &error);
|
@@ -55,7 +55,7 @@ rg_s_to_utf8(G_GNUC_UNUSED VALUE self, VALUE rb_utf16)
|
|
55
55
|
glong len, items_written;
|
56
56
|
GError *error = NULL;
|
57
57
|
|
58
|
-
utf16 = (gunichar2 *)StringValueCStr(rb_utf16);
|
58
|
+
utf16 = (gunichar2 *)(void *)StringValueCStr(rb_utf16);
|
59
59
|
len = RSTRING_LEN(rb_utf16) / sizeof(*utf16);
|
60
60
|
|
61
61
|
utf8 = g_utf16_to_utf8(utf16, len, NULL, &items_written, &error);
|
data/ext/glib2/rbglib_utils.c
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
2
|
/*
|
3
|
-
* Copyright (C) 2011 Ruby-GNOME2 Project Team
|
3
|
+
* Copyright (C) 2011-2019 Ruby-GNOME2 Project Team
|
4
4
|
* Copyright (C) 2004 Ruby-GNOME2 Project Team
|
5
5
|
* Copyright (C) 2004 Pascal Terjan
|
6
6
|
*
|
@@ -243,7 +243,7 @@ void g_atexit (GVoidFunc func);
|
|
243
243
|
static VALUE
|
244
244
|
rg_s_parse_debug_string(G_GNUC_UNUSED VALUE self, VALUE string, VALUE keys)
|
245
245
|
{
|
246
|
-
|
246
|
+
long i, nkeys;
|
247
247
|
VALUE ary;
|
248
248
|
GDebugKey* gkeys;
|
249
249
|
|
@@ -256,7 +256,7 @@ rg_s_parse_debug_string(G_GNUC_UNUSED VALUE self, VALUE string, VALUE keys)
|
|
256
256
|
gkeys[i].value = NUM2UINT(RARRAY_PTR(RARRAY_PTR(ary)[i])[1]);
|
257
257
|
}
|
258
258
|
|
259
|
-
return UINT2NUM(g_parse_debug_string(RVAL2CSTR(string), gkeys, nkeys));
|
259
|
+
return UINT2NUM(g_parse_debug_string(RVAL2CSTR(string), gkeys, (guint)nkeys));
|
260
260
|
}
|
261
261
|
|
262
262
|
/*
|
data/ext/glib2/rbgobj_boxed.c
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
2
|
/*
|
3
|
-
* Copyright (C) 2011-
|
3
|
+
* Copyright (C) 2011-2019 Ruby-GNOME2 Project Team
|
4
4
|
* Copyright (C) 2002,2003 Masahiro Sakai
|
5
5
|
*
|
6
6
|
* This library is free software; you can redistribute it and/or
|
@@ -58,6 +58,7 @@ static const rb_data_type_t rg_glib_boxed_type = {
|
|
58
58
|
boxed_mark,
|
59
59
|
boxed_free,
|
60
60
|
NULL,
|
61
|
+
{0},
|
61
62
|
},
|
62
63
|
NULL,
|
63
64
|
NULL,
|
data/ext/glib2/rbgobj_enums.c
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
2
|
/*
|
3
|
-
* Copyright (C) 2011-
|
3
|
+
* Copyright (C) 2011-2019 Ruby-GNOME2 Project Team
|
4
4
|
* Copyright (C) 2004-2006 Ruby-GNOME2 Project Team
|
5
5
|
* Copyright (C) 2002,2003 Masahiro Sakai
|
6
6
|
*
|
@@ -78,7 +78,7 @@ rg_enum_add_constants(VALUE mod, GType enum_type, const gchar *strip_prefix)
|
|
78
78
|
{
|
79
79
|
GEnumClass *gclass;
|
80
80
|
guint i;
|
81
|
-
|
81
|
+
size_t prefix_len = strlen(strip_prefix);
|
82
82
|
|
83
83
|
gclass = G_ENUM_CLASS(g_type_class_ref(enum_type));
|
84
84
|
|
@@ -120,6 +120,7 @@ static const rb_data_type_t rg_glib_enum_type = {
|
|
120
120
|
NULL,
|
121
121
|
enum_free,
|
122
122
|
NULL,
|
123
|
+
{0},
|
123
124
|
},
|
124
125
|
NULL,
|
125
126
|
NULL,
|
data/ext/glib2/rbgobj_flags.c
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
2
|
/*
|
3
|
-
* Copyright (C) 2004-
|
3
|
+
* Copyright (C) 2004-2019 Ruby-GNOME2 Project Team
|
4
4
|
* Copyright (C) 2002,2003 Masahiro Sakai
|
5
5
|
*
|
6
6
|
* This library is free software; you can redistribute it and/or
|
@@ -38,7 +38,7 @@ rg_flags_add_constants(VALUE mod, GType flags_type, const gchar *strip_prefix)
|
|
38
38
|
{
|
39
39
|
GFlagsClass *gclass;
|
40
40
|
guint i;
|
41
|
-
|
41
|
+
size_t prefix_len = strlen(strip_prefix);
|
42
42
|
|
43
43
|
gclass = G_FLAGS_CLASS(g_type_class_ref(flags_type));
|
44
44
|
|
@@ -81,6 +81,7 @@ static const rb_data_type_t rg_glib_flags_type = {
|
|
81
81
|
NULL,
|
82
82
|
flags_free,
|
83
83
|
NULL,
|
84
|
+
{0},
|
84
85
|
},
|
85
86
|
NULL,
|
86
87
|
NULL,
|
@@ -273,7 +274,7 @@ resolve_flags_value(VALUE klass, GFlagsClass *gclass, VALUE flag_or_flags)
|
|
273
274
|
}
|
274
275
|
case RUBY_T_ARRAY:
|
275
276
|
{
|
276
|
-
|
277
|
+
long i, n;
|
277
278
|
n = RARRAY_LEN(flag_or_flags);
|
278
279
|
for (i = 0; i < n; i++) {
|
279
280
|
value |= resolve_flags_value(klass,
|
data/ext/glib2/rbgobj_object.c
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
2
|
/*
|
3
|
-
* Copyright (C) 2011-
|
3
|
+
* Copyright (C) 2011-2019 Ruby-GNOME2 Project Team
|
4
4
|
* Copyright (C) 2002-2004 Ruby-GNOME2 Project Team
|
5
5
|
* Copyright (C) 2002-2003 Masahiro Sakai
|
6
6
|
* Copyright (C) 1998-2000 Yukihiro Matsumoto,
|
@@ -52,7 +52,9 @@ weak_notify(gpointer data, G_GNUC_UNUSED GObject *where_the_object_was)
|
|
52
52
|
}
|
53
53
|
|
54
54
|
static void
|
55
|
-
holder_relatives_mark(gpointer key,
|
55
|
+
holder_relatives_mark(G_GNUC_UNUSED gpointer key,
|
56
|
+
gpointer value,
|
57
|
+
G_GNUC_UNUSED gpointer user_data)
|
56
58
|
{
|
57
59
|
VALUE rb_relative = (VALUE)value;
|
58
60
|
rb_gc_mark(rb_relative);
|
@@ -99,6 +101,7 @@ static const rb_data_type_t rg_glib_object_type = {
|
|
99
101
|
holder_mark,
|
100
102
|
holder_free,
|
101
103
|
NULL,
|
104
|
+
{0},
|
102
105
|
},
|
103
106
|
NULL,
|
104
107
|
NULL,
|
@@ -135,7 +138,7 @@ rbgobj_object_remove_relative(VALUE rb_gobject, VALUE rb_relative)
|
|
135
138
|
}
|
136
139
|
|
137
140
|
static gboolean
|
138
|
-
rbgobj_object_remove_relatives_body(gpointer key,
|
141
|
+
rbgobj_object_remove_relatives_body(G_GNUC_UNUSED gpointer key,
|
139
142
|
gpointer value,
|
140
143
|
gpointer user_data)
|
141
144
|
{
|
@@ -381,10 +384,10 @@ rbgobj_gobject_new(GType gtype, VALUE params_hash)
|
|
381
384
|
if (NIL_P(params_hash)) {
|
382
385
|
result = g_object_newv(gtype, 0, NULL);
|
383
386
|
} else {
|
384
|
-
|
387
|
+
guint param_size;
|
385
388
|
struct param_setup_arg arg;
|
386
389
|
|
387
|
-
param_size =
|
390
|
+
param_size = NUM2UINT(rb_funcall(params_hash, rb_intern("length"), 0));
|
388
391
|
|
389
392
|
arg.param_size = param_size;
|
390
393
|
arg.gclass = G_OBJECT_CLASS(g_type_class_ref(gtype));
|
data/ext/glib2/rbgobj_param.c
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
2
|
/*
|
3
|
-
* Copyright (C) 2011-
|
3
|
+
* Copyright (C) 2011-2019 Ruby-GNOME2 Project Team
|
4
4
|
* Copyright (C) 2002,2003 Masahiro Sakai
|
5
5
|
*
|
6
6
|
* This library is free software; you can redistribute it and/or
|
@@ -59,6 +59,7 @@ static const rb_data_type_t rg_glib_param_type = {
|
|
59
59
|
pspec_mark,
|
60
60
|
pspec_free,
|
61
61
|
NULL,
|
62
|
+
{0},
|
62
63
|
},
|
63
64
|
NULL,
|
64
65
|
NULL,
|
data/ext/glib2/rbgobj_signal.c
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
2
|
/*
|
3
|
-
* Copyright (C) 2011-
|
3
|
+
* Copyright (C) 2011-2019 Ruby-GNOME2 Project Team
|
4
4
|
* Copyright (C) 2002-2004 Ruby-GNOME2 Project Team
|
5
5
|
* Copyright (C) 2002,2003 Masahiro Sakai
|
6
6
|
*
|
@@ -37,6 +37,7 @@ static const rb_data_type_t rg_glib_signal_type = {
|
|
37
37
|
NULL,
|
38
38
|
NULL,
|
39
39
|
NULL,
|
40
|
+
{0},
|
40
41
|
},
|
41
42
|
NULL,
|
42
43
|
NULL,
|
@@ -252,7 +253,7 @@ gobj_s_define_signal(int argc, VALUE* argv, VALUE self)
|
|
252
253
|
NIL_P(accumulator) ? NULL : (gpointer)accumulator,
|
253
254
|
NULL, /* c_marshaller */
|
254
255
|
return_type,
|
255
|
-
n_params,
|
256
|
+
(guint)n_params,
|
256
257
|
param_types);
|
257
258
|
|
258
259
|
g_free(param_types);
|
@@ -833,7 +834,7 @@ g_signal_add_emission_hook_closure (guint signal_id,
|
|
833
834
|
GQuark detail,
|
834
835
|
GClosure* closure)
|
835
836
|
{
|
836
|
-
|
837
|
+
gulong hook_id;
|
837
838
|
g_closure_ref(closure);
|
838
839
|
g_closure_sink(closure);
|
839
840
|
hook_id = g_signal_add_emission_hook(signal_id, detail,
|
@@ -847,7 +848,7 @@ rg_add_emission_hook(int argc, VALUE* argv, VALUE self)
|
|
847
848
|
{
|
848
849
|
GSignalQuery *query;
|
849
850
|
VALUE proc;
|
850
|
-
|
851
|
+
gulong hook_id;
|
851
852
|
GQuark detail = 0;
|
852
853
|
GClosure* closure;
|
853
854
|
|