leveldb-ruby 0.6 → 0.7

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.
Files changed (2) hide show
  1. data/ext/leveldb/leveldb.cc +9 -2
  2. metadata +101 -117
@@ -25,7 +25,11 @@ typedef struct bound_db {
25
25
  } bound_db;
26
26
 
27
27
  static void db_free(bound_db* db) {
28
- delete db->db;
28
+ if(db->db != NULL) {
29
+ delete db->db;
30
+ db->db = NULL;
31
+ }
32
+ delete db;
29
33
  }
30
34
 
31
35
  static VALUE db_make(VALUE klass, VALUE v_pathname, VALUE v_create_if_necessary, VALUE v_break_if_exists) {
@@ -52,7 +56,10 @@ static VALUE db_close(VALUE self) {
52
56
  bound_db* db;
53
57
  Data_Get_Struct(self, bound_db, db);
54
58
 
55
- db_free(db);
59
+ if(db->db != NULL) {
60
+ delete db->db;
61
+ db->db = NULL;
62
+ }
56
63
  return Qtrue;
57
64
  }
58
65
 
metadata CHANGED
@@ -1,183 +1,167 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: leveldb-ruby
3
- version: !ruby/object:Gem::Version
4
- hash: 7
3
+ version: !ruby/object:Gem::Version
4
+ version: '0.7'
5
5
  prerelease:
6
- segments:
7
- - 0
8
- - 6
9
- version: "0.6"
10
6
  platform: ruby
11
- authors:
7
+ authors:
12
8
  - William Morgan
13
9
  autorequire:
14
10
  bindir: bin
15
11
  cert_chain: []
16
-
17
- date: 2011-06-29 13:34:49 -07:00
12
+ date: 2011-07-16 13:48:52.000000000 -07:00
18
13
  default_executable:
19
14
  dependencies: []
20
-
21
15
  description: LevelDB-Ruby is a Ruby binding to LevelDB.
22
16
  email: wmorgan-leveldb-ruby-gemspec@masanjin.net
23
17
  executables: []
24
-
25
- extensions:
18
+ extensions:
26
19
  - ext/leveldb/extconf.rb
27
- extra_rdoc_files:
20
+ extra_rdoc_files:
28
21
  - README
29
22
  - ext/leveldb/leveldb.cc
30
- files:
23
+ files:
31
24
  - README
32
25
  - ext/leveldb/extconf.rb
33
26
  - lib/leveldb.rb
34
27
  - ext/leveldb/leveldb.cc
35
28
  - leveldb/Makefile
36
- - leveldb/port/win/stdint.h
37
- - leveldb/port/port_osx.h
38
- - leveldb/port/port_android.h
39
- - leveldb/port/sha1_test.cc
40
- - leveldb/port/port_chromium.h
41
- - leveldb/port/port_chromium.cc
42
- - leveldb/port/port_posix.h
43
- - leveldb/port/sha1_portable.cc
44
- - leveldb/port/port_example.h
45
- - leveldb/port/port_posix.cc
46
- - leveldb/port/port.h
47
- - leveldb/port/sha1_portable.h
48
- - leveldb/port/port_android.cc
49
- - leveldb/port/port_osx.cc
50
- - leveldb/db/dbformat.cc
51
- - leveldb/db/db_test.cc
52
- - leveldb/db/write_batch_internal.h
53
- - leveldb/db/db_impl.h
54
- - leveldb/db/log_writer.cc
55
- - leveldb/db/write_batch.cc
29
+ - leveldb/db/builder.cc
30
+ - leveldb/db/builder.h
56
31
  - leveldb/db/corruption_test.cc
57
- - leveldb/db/db_impl.cc
58
- - leveldb/db/filename.h
59
- - leveldb/db/skiplist.h
60
- - leveldb/db/table_cache.cc
61
- - leveldb/db/log_test.cc
62
- - leveldb/db/log_reader.h
63
32
  - leveldb/db/db_bench.cc
64
- - leveldb/db/repair.cc
33
+ - leveldb/db/db_impl.cc
34
+ - leveldb/db/db_impl.h
65
35
  - leveldb/db/db_iter.cc
66
- - leveldb/db/write_batch_test.cc
67
- - leveldb/db/version_set.h
68
- - leveldb/db/memtable.cc
69
- - leveldb/db/version_set.cc
36
+ - leveldb/db/db_iter.h
37
+ - leveldb/db/db_test.cc
38
+ - leveldb/db/dbformat.cc
39
+ - leveldb/db/dbformat.h
40
+ - leveldb/db/dbformat_test.cc
41
+ - leveldb/db/filename.cc
42
+ - leveldb/db/filename.h
70
43
  - leveldb/db/filename_test.cc
71
- - leveldb/db/snapshot.h
72
- - leveldb/db/log_reader.cc
73
44
  - leveldb/db/log_format.h
74
- - leveldb/db/version_edit.cc
75
- - leveldb/db/table_cache.h
76
- - leveldb/db/builder.h
77
- - leveldb/db/dbformat.h
78
- - leveldb/db/db_iter.h
45
+ - leveldb/db/log_reader.cc
46
+ - leveldb/db/log_reader.h
47
+ - leveldb/db/log_test.cc
48
+ - leveldb/db/log_writer.cc
49
+ - leveldb/db/log_writer.h
50
+ - leveldb/db/memtable.cc
79
51
  - leveldb/db/memtable.h
80
- - leveldb/db/version_edit_test.cc
81
- - leveldb/db/dbformat_test.cc
82
- - leveldb/db/builder.cc
52
+ - leveldb/db/repair.cc
53
+ - leveldb/db/skiplist.h
83
54
  - leveldb/db/skiplist_test.cc
84
- - leveldb/db/log_writer.h
55
+ - leveldb/db/snapshot.h
56
+ - leveldb/db/table_cache.cc
57
+ - leveldb/db/table_cache.h
58
+ - leveldb/db/version_edit.cc
85
59
  - leveldb/db/version_edit.h
86
- - leveldb/db/filename.cc
60
+ - leveldb/db/version_edit_test.cc
61
+ - leveldb/db/version_set.cc
62
+ - leveldb/db/version_set.h
63
+ - leveldb/db/write_batch.cc
64
+ - leveldb/db/write_batch_internal.h
65
+ - leveldb/db/write_batch_test.cc
66
+ - leveldb/include/leveldb/cache.h
87
67
  - leveldb/include/leveldb/comparator.h
88
- - leveldb/include/leveldb/table.h
89
- - leveldb/include/leveldb/slice.h
68
+ - leveldb/include/leveldb/db.h
69
+ - leveldb/include/leveldb/env.h
90
70
  - leveldb/include/leveldb/iterator.h
71
+ - leveldb/include/leveldb/options.h
72
+ - leveldb/include/leveldb/slice.h
73
+ - leveldb/include/leveldb/status.h
74
+ - leveldb/include/leveldb/table.h
91
75
  - leveldb/include/leveldb/table_builder.h
92
- - leveldb/include/leveldb/env.h
93
- - leveldb/include/leveldb/db.h
94
- - leveldb/include/leveldb/cache.h
95
76
  - leveldb/include/leveldb/write_batch.h
96
- - leveldb/include/leveldb/status.h
97
- - leveldb/include/leveldb/options.h
77
+ - leveldb/port/port.h
78
+ - leveldb/port/port_android.cc
79
+ - leveldb/port/port_android.h
80
+ - leveldb/port/port_chromium.cc
81
+ - leveldb/port/port_chromium.h
82
+ - leveldb/port/port_example.h
83
+ - leveldb/port/port_osx.cc
84
+ - leveldb/port/port_osx.h
85
+ - leveldb/port/port_posix.cc
86
+ - leveldb/port/port_posix.h
87
+ - leveldb/port/sha1_portable.cc
88
+ - leveldb/port/sha1_portable.h
89
+ - leveldb/port/sha1_test.cc
90
+ - leveldb/port/win/stdint.h
91
+ - leveldb/table/block.cc
98
92
  - leveldb/table/block.h
93
+ - leveldb/table/block_builder.cc
94
+ - leveldb/table/block_builder.h
99
95
  - leveldb/table/format.cc
100
- - leveldb/table/table_test.cc
96
+ - leveldb/table/format.h
97
+ - leveldb/table/iterator.cc
101
98
  - leveldb/table/iterator_wrapper.h
99
+ - leveldb/table/merger.cc
102
100
  - leveldb/table/merger.h
103
- - leveldb/table/iterator.cc
104
- - leveldb/table/two_level_iterator.h
105
- - leveldb/table/two_level_iterator.cc
106
- - leveldb/table/format.h
107
101
  - leveldb/table/table.cc
108
- - leveldb/table/merger.cc
109
- - leveldb/table/block_builder.h
110
- - leveldb/table/block.cc
111
- - leveldb/table/block_builder.cc
112
102
  - leveldb/table/table_builder.cc
113
- - leveldb/util/comparator.cc
114
- - leveldb/util/histogram.cc
115
- - leveldb/util/hash.h
116
- - leveldb/util/crc32c.cc
117
- - leveldb/util/histogram.h
118
- - leveldb/util/testutil.h
103
+ - leveldb/table/table_test.cc
104
+ - leveldb/table/two_level_iterator.cc
105
+ - leveldb/table/two_level_iterator.h
106
+ - leveldb/util/arena.cc
119
107
  - leveldb/util/arena.h
120
- - leveldb/util/cache_test.cc
121
108
  - leveldb/util/arena_test.cc
122
- - leveldb/util/crc32c_test.cc
123
- - leveldb/util/env.cc
124
- - leveldb/util/coding_test.cc
125
- - leveldb/util/testharness.cc
109
+ - leveldb/util/cache.cc
110
+ - leveldb/util/cache_test.cc
111
+ - leveldb/util/coding.cc
126
112
  - leveldb/util/coding.h
127
- - leveldb/util/mutexlock.h
128
- - leveldb/util/logging.cc
129
- - leveldb/util/testutil.cc
130
- - leveldb/util/hash.cc
113
+ - leveldb/util/coding_test.cc
114
+ - leveldb/util/comparator.cc
115
+ - leveldb/util/crc32c.cc
131
116
  - leveldb/util/crc32c.h
132
- - leveldb/util/testharness.h
133
- - leveldb/util/env_test.cc
117
+ - leveldb/util/crc32c_test.cc
118
+ - leveldb/util/env.cc
119
+ - leveldb/util/env_chromium.cc
134
120
  - leveldb/util/env_posix.cc
135
- - leveldb/util/arena.cc
121
+ - leveldb/util/env_test.cc
122
+ - leveldb/util/hash.cc
123
+ - leveldb/util/hash.h
124
+ - leveldb/util/histogram.cc
125
+ - leveldb/util/histogram.h
126
+ - leveldb/util/logging.cc
127
+ - leveldb/util/logging.h
128
+ - leveldb/util/mutexlock.h
136
129
  - leveldb/util/options.cc
137
130
  - leveldb/util/random.h
138
- - leveldb/util/logging.h
139
- - leveldb/util/coding.cc
140
131
  - leveldb/util/status.cc
141
- - leveldb/util/cache.cc
142
- - leveldb/util/env_chromium.cc
132
+ - leveldb/util/testharness.cc
133
+ - leveldb/util/testharness.h
134
+ - leveldb/util/testutil.cc
135
+ - leveldb/util/testutil.h
143
136
  has_rdoc: true
144
137
  homepage: http://github.com/wmorgan/leveldb-ruby
145
138
  licenses: []
146
-
147
139
  post_install_message:
148
- rdoc_options:
140
+ rdoc_options:
149
141
  - -c
150
142
  - utf8
151
143
  - --main
152
144
  - README
153
145
  - --title
154
146
  - LevelDB
155
- require_paths:
147
+ require_paths:
156
148
  - lib
157
- required_ruby_version: !ruby/object:Gem::Requirement
149
+ required_ruby_version: !ruby/object:Gem::Requirement
158
150
  none: false
159
- requirements:
160
- - - ">="
161
- - !ruby/object:Gem::Version
162
- hash: 3
163
- segments:
164
- - 0
165
- version: "0"
166
- required_rubygems_version: !ruby/object:Gem::Requirement
151
+ requirements:
152
+ - - ! '>='
153
+ - !ruby/object:Gem::Version
154
+ version: '0'
155
+ required_rubygems_version: !ruby/object:Gem::Requirement
167
156
  none: false
168
- requirements:
169
- - - ">="
170
- - !ruby/object:Gem::Version
171
- hash: 3
172
- segments:
173
- - 0
174
- version: "0"
157
+ requirements:
158
+ - - ! '>='
159
+ - !ruby/object:Gem::Version
160
+ version: '0'
175
161
  requirements: []
176
-
177
162
  rubyforge_project:
178
163
  rubygems_version: 1.6.0
179
164
  signing_key:
180
165
  specification_version: 3
181
166
  summary: a Ruby binding to LevelDB
182
167
  test_files: []
183
-