rrd-ffi 0.2.9 → 0.2.10
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.
- data/CHANGELOG.rdoc +3 -0
- data/lib/rrd/version.rb +1 -1
- data/lib/rrd/wrapper.rb +25 -16
- data/rrd-ffi.gemspec +2 -2
- metadata +8 -8
data/CHANGELOG.rdoc
CHANGED
data/lib/rrd/version.rb
CHANGED
data/lib/rrd/wrapper.rb
CHANGED
@@ -382,24 +382,24 @@ module RRD
|
|
382
382
|
|
383
383
|
private
|
384
384
|
def empty_pointer
|
385
|
-
|
385
|
+
mem_ptrs ||= []
|
386
386
|
ptr = FFI::MemoryPointer.new(:pointer)
|
387
|
-
|
387
|
+
mem_ptrs << ptr
|
388
388
|
ptr
|
389
389
|
end
|
390
390
|
|
391
391
|
# FIXME: remove clear_error from here
|
392
392
|
def to_pointer(array_of_strings)
|
393
393
|
clear_error
|
394
|
-
|
395
|
-
array_of_strings.each {|item|
|
394
|
+
str_ptrs = []
|
395
|
+
array_of_strings.each {|item| str_ptrs << FFI::MemoryPointer.from_string(item)}
|
396
396
|
|
397
|
-
|
398
|
-
|
399
|
-
|
397
|
+
argv = FFI::MemoryPointer.new(:pointer, str_ptrs.length)
|
398
|
+
str_ptrs.each_with_index do |p, i|
|
399
|
+
argv[i].put_pointer(0, p)
|
400
400
|
end
|
401
401
|
|
402
|
-
|
402
|
+
argv
|
403
403
|
end
|
404
404
|
|
405
405
|
def free_in_rrd(*pointers)
|
@@ -407,17 +407,26 @@ module RRD
|
|
407
407
|
end
|
408
408
|
|
409
409
|
def free_pointers
|
410
|
-
|
411
|
-
|
410
|
+
str_ptrs ||= []
|
411
|
+
mem_ptrs ||= []
|
412
412
|
|
413
|
-
|
414
|
-
|
415
|
-
|
413
|
+
str_ptrs.each{|str_ptr| str_ptr.free}
|
414
|
+
mem_ptrs.each{|mem_ptr| mem_ptr.free}
|
415
|
+
argv.free unless argv.nil?
|
416
416
|
|
417
|
-
|
418
|
-
|
419
|
-
|
417
|
+
argv = nil
|
418
|
+
str_ptrs = nil
|
419
|
+
mem_ptrs = nil
|
420
420
|
end
|
421
|
+
|
422
|
+
[:str_ptrs, :mem_ptrs, :argv].each do |name|
|
423
|
+
define_method name do
|
424
|
+
Thread.current[name]
|
425
|
+
end
|
426
|
+
define_method "#{name}=" do |value|
|
427
|
+
Thread.current[name] = value
|
428
|
+
end
|
429
|
+
end
|
421
430
|
|
422
431
|
end
|
423
432
|
end
|
data/rrd-ffi.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "rrd-ffi"
|
8
|
-
s.version = "0.2.
|
8
|
+
s.version = "0.2.10"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["morellon"]
|
12
|
-
s.date = "2012-
|
12
|
+
s.date = "2012-04-12"
|
13
13
|
s.description = "Provides bindings for many RRD functions (using ffi gem and librrd), as well as DSLs for graphic and rrd building. You must have librrd in your system!"
|
14
14
|
s.email = "morellon@gmail.com"
|
15
15
|
s.extra_rdoc_files = [
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rrd-ffi
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.10
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-04-12 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rspec
|
16
|
-
requirement: &
|
16
|
+
requirement: &2152158960 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :development
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *2152158960
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: ffi
|
27
|
-
requirement: &
|
27
|
+
requirement: &2152156840 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '0'
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *2152156840
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: activesupport
|
38
|
-
requirement: &
|
38
|
+
requirement: &2152155000 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,7 +43,7 @@ dependencies:
|
|
43
43
|
version: '0'
|
44
44
|
type: :runtime
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *2152155000
|
47
47
|
description: Provides bindings for many RRD functions (using ffi gem and librrd),
|
48
48
|
as well as DSLs for graphic and rrd building. You must have librrd in your system!
|
49
49
|
email: morellon@gmail.com
|