glib2 3.2.0 → 3.2.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7d43d9ed5f11b3fccdab8aafc21a2fdb6b1aa371
4
- data.tar.gz: d1f0fd447c1f7bda052bd3a9b70b5f3880b6e69a
3
+ metadata.gz: '02369ea278700a7eb9a86d3d262c1285e20ec17e'
4
+ data.tar.gz: ff3fa9197fd8bdc49974be2694c7cba5a56c554d
5
5
  SHA512:
6
- metadata.gz: 2f5909e8f1fca4f41d19ff39412e437f5519d33a8f763f215936b2e91044cce33b3aff3de17380c0dd131a6d04618234b3ebf924b3713ff0a80e815708b658da
7
- data.tar.gz: 28a379fd75d9024aa5365db8bee8fe2a820983b28bcfe93ec8a386960a7e57b8f7b0512256bb60002ba2a48c8c64e3e0404c2f3475ced6651d67c21b54b16990
6
+ metadata.gz: 3dde83bcd8b3546d1db154aa76e99d7d63b7d4c5942168b6f5de287969d85e0d425e9d3e95f663a7fca2d99024aadcc8e33f4837d34a41d93668161c1411ba46
7
+ data.tar.gz: 3026321f0348810656ec618752da8d0dc2821ef17feb7897bab8ae53def124b2e3bf85c1b1e9f368e5efe8d833c450e1ec18c54194c7077f42847e48d1271359
@@ -38,7 +38,12 @@ rg_initialize(int argc, VALUE *argv, VALUE self)
38
38
  bytes = g_bytes_new(NULL, 0);
39
39
  } else {
40
40
  const gchar *data = RVAL2CSTR_PTR(rb_data);
41
- bytes = g_bytes_new(data, RSTRING_LEN(rb_data));
41
+ if (RB_OBJ_FROZEN(rb_data)) {
42
+ bytes = g_bytes_new_static(data, RSTRING_LEN(rb_data));
43
+ rb_iv_set(self, "source", rb_data);
44
+ } else {
45
+ bytes = g_bytes_new(data, RSTRING_LEN(rb_data));
46
+ }
42
47
  }
43
48
  G_INITIALIZE(self, bytes);
44
49
 
@@ -36,7 +36,7 @@ extern "C" {
36
36
 
37
37
  #define RBGLIB_MAJOR_VERSION 3
38
38
  #define RBGLIB_MINOR_VERSION 2
39
- #define RBGLIB_MICRO_VERSION 0
39
+ #define RBGLIB_MICRO_VERSION 1
40
40
 
41
41
  #ifndef RB_ZALLOC
42
42
  # ifdef ZALLOC
@@ -46,6 +46,11 @@ extern "C" {
46
46
  # endif
47
47
  #endif
48
48
 
49
+ /* For Ruby < 2.3 */
50
+ #ifndef RB_OBJ_FROZEN
51
+ # define RB_OBJ_FROZEN(obj) OBJ_FROZEN(obj)
52
+ #endif
53
+
49
54
  #ifndef RSTRING_PTR
50
55
  # define RSTRING_PTR(s) (RSTRING(s)->ptr)
51
56
  # define RSTRING_LEN(s) (RSTRING(s)->len)
@@ -21,6 +21,21 @@ class TestGLibBytes < Test::Unit::TestCase
21
21
  only_glib_version(2, 32, 0)
22
22
  end
23
23
 
24
+ sub_test_case ".new" do
25
+ def create_bytes(options={})
26
+ data = "Hello"
27
+ data.freeze if options[:freeze]
28
+ [data.object_id, GLib::Bytes.new(data)]
29
+ end
30
+
31
+ test "frozen" do
32
+ id, bytes = create_bytes(:freeze => true)
33
+ GC.start
34
+ assert_equal(bytes.to_s,
35
+ ObjectSpace._id2ref(id))
36
+ end
37
+ end
38
+
24
39
  test "#to_s" do
25
40
  data = "Hello"
26
41
  bytes = GLib::Bytes.new(data)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: glib2
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.2.0
4
+ version: 3.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - The Ruby-GNOME2 Project Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-11-07 00:00:00.000000000 Z
11
+ date: 2017-11-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: pkg-config