glib2 3.3.2 → 3.3.3
Sign up to get free protection for your applications and to get access to all the features.
- 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
|
|