ffi 1.0.12.rc1 → 1.0.12.rc2
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of ffi might be problematic. Click here for more details.
- data/Rakefile +1 -1
- data/ext/ffi_c/Pointer.c +5 -0
- data/ext/ffi_c/Struct.c +1 -4
- metadata +46 -29
- data/lib/ffi_c.bundle +0 -0
data/Rakefile
CHANGED
@@ -75,7 +75,7 @@ PROJ.name = 'ffi'
|
|
75
75
|
PROJ.authors = 'Wayne Meissner'
|
76
76
|
PROJ.email = 'wmeissner@gmail.com'
|
77
77
|
PROJ.url = 'http://wiki.github.com/ffi/ffi'
|
78
|
-
PROJ.version = '1.0.12.
|
78
|
+
PROJ.version = '1.0.12.rc2'
|
79
79
|
PROJ.rubyforge.name = 'ffi'
|
80
80
|
PROJ.readme_file = 'README.rdoc'
|
81
81
|
|
data/ext/ffi_c/Pointer.c
CHANGED
@@ -386,6 +386,11 @@ ptr_free(VALUE self)
|
|
386
386
|
ptr->storage = NULL;
|
387
387
|
}
|
388
388
|
ptr->allocated = false;
|
389
|
+
|
390
|
+
} else {
|
391
|
+
VALUE caller = rb_funcall(rb_funcall(Qnil, rb_intern("caller"), 0), rb_intern("first"), 0);
|
392
|
+
|
393
|
+
rb_warn("calling free on non allocated pointer %s from %s", RSTRING_PTR(ptr_inspect(self)), RSTRING_PTR(rb_str_to_str(caller)));
|
389
394
|
}
|
390
395
|
|
391
396
|
return self;
|
data/ext/ffi_c/Struct.c
CHANGED
@@ -146,10 +146,7 @@ struct_initialize_copy(VALUE self, VALUE other)
|
|
146
146
|
// be longer than just this struct.
|
147
147
|
//
|
148
148
|
if (src->pointer->address != NULL) {
|
149
|
-
|
150
|
-
memargs[1] = INT2FIX(src->layout->size);
|
151
|
-
memargs[2] = Qfalse;
|
152
|
-
dst->rbPointer = rb_class_new_instance(2, memargs, rbffi_MemoryPointerClass);
|
149
|
+
dst->rbPointer = rbffi_MemoryPointer_NewInstance(1, src->layout->size, false);
|
153
150
|
dst->pointer = MEMORY(dst->rbPointer);
|
154
151
|
memcpy(dst->pointer->address, src->pointer->address, src->layout->size);
|
155
152
|
} else {
|
metadata
CHANGED
@@ -1,30 +1,38 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: ffi
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
hash: 4204373591
|
5
5
|
prerelease: 7
|
6
|
+
segments:
|
7
|
+
- 1
|
8
|
+
- 0
|
9
|
+
- 12
|
10
|
+
- rc
|
11
|
+
- 2
|
12
|
+
version: 1.0.12.rc2
|
6
13
|
platform: ruby
|
7
|
-
authors:
|
14
|
+
authors:
|
8
15
|
- Wayne Meissner
|
9
16
|
autorequire:
|
10
17
|
bindir: bin
|
11
18
|
cert_chain: []
|
12
|
-
|
19
|
+
|
20
|
+
date: 2012-04-02 00:00:00 +10:00
|
21
|
+
default_executable:
|
13
22
|
dependencies: []
|
14
|
-
description: ! 'Ruby-FFI is a ruby extension for programmatically loading dynamic
|
15
23
|
|
24
|
+
description: |-
|
25
|
+
Ruby-FFI is a ruby extension for programmatically loading dynamic
|
16
26
|
libraries, binding functions within them, and calling those functions
|
17
|
-
|
18
27
|
from Ruby code. Moreover, a Ruby-FFI extension works without changes
|
19
|
-
|
20
28
|
on Ruby and JRuby. Discover why should you write your next extension
|
21
|
-
|
22
|
-
using Ruby-FFI here[http://wiki.github.com/ffi/ffi/why-use-ffi].'
|
29
|
+
using Ruby-FFI here[http://wiki.github.com/ffi/ffi/why-use-ffi].
|
23
30
|
email: wmeissner@gmail.com
|
24
31
|
executables: []
|
25
|
-
|
32
|
+
|
33
|
+
extensions:
|
26
34
|
- ext/ffi_c/extconf.rb
|
27
|
-
extra_rdoc_files:
|
35
|
+
extra_rdoc_files:
|
28
36
|
- History.txt
|
29
37
|
- README.rdoc
|
30
38
|
- lib/ffi/platform/arm-linux/types.conf
|
@@ -53,8 +61,7 @@ extra_rdoc_files:
|
|
53
61
|
- lib/ffi/platform/x86_64-netbsd/types.conf
|
54
62
|
- lib/ffi/platform/x86_64-openbsd/types.conf
|
55
63
|
- lib/ffi/platform/x86_64-solaris/types.conf
|
56
|
-
|
57
|
-
files:
|
64
|
+
files:
|
58
65
|
- History.txt
|
59
66
|
- LICENSE
|
60
67
|
- README.rdoc
|
@@ -435,7 +442,6 @@ files:
|
|
435
442
|
- lib/ffi/types.rb
|
436
443
|
- lib/ffi/union.rb
|
437
444
|
- lib/ffi/variadic.rb
|
438
|
-
- lib/ffi_c.bundle
|
439
445
|
- spec/ffi/async_callback_spec.rb
|
440
446
|
- spec/ffi/bool_spec.rb
|
441
447
|
- spec/ffi/buffer_spec.rb
|
@@ -480,34 +486,45 @@ files:
|
|
480
486
|
- tasks/svn.rake
|
481
487
|
- tasks/test.rake
|
482
488
|
- tasks/yard.rake
|
489
|
+
has_rdoc: true
|
483
490
|
homepage: http://wiki.github.com/ffi/ffi
|
484
491
|
licenses: []
|
492
|
+
|
485
493
|
post_install_message:
|
486
|
-
rdoc_options:
|
494
|
+
rdoc_options:
|
487
495
|
- -x
|
488
496
|
- ext
|
489
497
|
- --main
|
490
498
|
- README.rdoc
|
491
|
-
require_paths:
|
499
|
+
require_paths:
|
492
500
|
- lib
|
493
501
|
- ext
|
494
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
502
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
495
503
|
none: false
|
496
|
-
requirements:
|
497
|
-
- -
|
498
|
-
- !ruby/object:Gem::Version
|
499
|
-
|
500
|
-
|
504
|
+
requirements:
|
505
|
+
- - ">="
|
506
|
+
- !ruby/object:Gem::Version
|
507
|
+
hash: 3
|
508
|
+
segments:
|
509
|
+
- 0
|
510
|
+
version: "0"
|
511
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
501
512
|
none: false
|
502
|
-
requirements:
|
503
|
-
- -
|
504
|
-
- !ruby/object:Gem::Version
|
513
|
+
requirements:
|
514
|
+
- - ">"
|
515
|
+
- !ruby/object:Gem::Version
|
516
|
+
hash: 25
|
517
|
+
segments:
|
518
|
+
- 1
|
519
|
+
- 3
|
520
|
+
- 1
|
505
521
|
version: 1.3.1
|
506
522
|
requirements: []
|
523
|
+
|
507
524
|
rubyforge_project: ffi
|
508
|
-
rubygems_version: 1.
|
525
|
+
rubygems_version: 1.6.2
|
509
526
|
signing_key:
|
510
527
|
specification_version: 3
|
511
|
-
summary: Ruby-FFI is a ruby extension for programmatically loading dynamic libraries,
|
512
|
-
binding functions within them, and calling those functions from Ruby code
|
528
|
+
summary: Ruby-FFI is a ruby extension for programmatically loading dynamic libraries, binding functions within them, and calling those functions from Ruby code
|
513
529
|
test_files: []
|
530
|
+
|
data/lib/ffi_c.bundle
DELETED
Binary file
|