gdb.rb 0.1.2 → 0.1.3

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 (3) hide show
  1. data/gdb.rb.gemspec +14 -14
  2. data/scripts/ruby-gdb.py +20 -3
  3. metadata +5 -5
@@ -1,7 +1,7 @@
1
1
  spec = Gem::Specification.new do |s|
2
2
  s.name = 'gdb.rb'
3
- s.version = '0.1.2'
4
- s.date = '2009-12-04'
3
+ s.version = '0.1.3'
4
+ s.date = '2009-12-22'
5
5
  s.rubyforge_project = 'gdb-rb'
6
6
  s.summary = 'gdb hooks for MRI'
7
7
  s.description = 'A set of gdb7 extensions for the MRI interpreter'
@@ -17,17 +17,17 @@ spec = Gem::Specification.new do |s|
17
17
  s.executables << 'gdb.rb'
18
18
 
19
19
  # ruby -rpp -e' pp `git ls-files`.split("\n").sort '
20
- s.files = [
21
- "README",
22
- "bin/gdb.rb",
23
- "ext/extconf.rb",
24
- "ext/Makefile",
25
- "ext/src/gdb-7.0.tar.bz2",
26
- "patches/gdb-eval.patch",
27
- "patches/gdb-breakpoints.patch",
28
- "patches/gdb-leak.patch",
29
- "patches/gdb-strings.patch",
30
- "scripts/ruby-gdb.py",
31
- "gdb.rb.gemspec"
20
+ s.files = %w[
21
+ README
22
+ bin/gdb.rb
23
+ ext/Makefile
24
+ ext/extconf.rb
25
+ ext/src/gdb-7.0.tar.bz2
26
+ gdb.rb.gemspec
27
+ patches/gdb-breakpoints.patch
28
+ patches/gdb-eval.patch
29
+ patches/gdb-leak.patch
30
+ patches/gdb-strings.patch
31
+ scripts/ruby-gdb.py
32
32
  ]
33
33
  end
@@ -269,8 +269,22 @@ class RubyObjects (gdb.Command):
269
269
  classes = ZeroDict()
270
270
 
271
271
  for (obj, type) in self.live_objects():
272
- if type == 0x2:
273
- classes[ int(obj['as']['basic']['klass']) ] += 1
272
+ if type == 0x0:
273
+ pass # none
274
+ elif type == 0x3b:
275
+ pass # blktag
276
+ elif type == 0x3c:
277
+ pass # undef
278
+ elif type == 0x3d:
279
+ pass # varmap
280
+ elif type == 0x3e:
281
+ pass # scope
282
+ elif type == 0x3f:
283
+ pass # node
284
+ else:
285
+ klass = obj['as']['basic']['klass']
286
+ if klass:
287
+ classes[ int(klass) ] += 1
274
288
 
275
289
  for (klass, num) in sorted(classes.items(), key=lambda(k,v):(v,k)):
276
290
  print "% 8d %s" % (num, gdb.eval('rb_class2name(%d)' % klass).string())
@@ -285,7 +299,10 @@ class RubyObjects (gdb.Command):
285
299
  ptr = s['ptr']
286
300
  if ptr:
287
301
  bytes += s['len']
288
- strings[ ptr.string() ] += 1
302
+ try:
303
+ strings[ ptr.string() ] += 1
304
+ except:
305
+ None
289
306
 
290
307
  for (s, num) in sorted(strings.items(), key=lambda(k,v):(v,k)):
291
308
  print "% 9d" % num, repr(s)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gdb.rb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Aman Gupta
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-12-04 00:00:00 -05:00
12
+ date: 2009-12-22 00:00:00 -08:00
13
13
  default_executable:
14
14
  dependencies: []
15
15
 
@@ -24,15 +24,15 @@ extra_rdoc_files: []
24
24
  files:
25
25
  - README
26
26
  - bin/gdb.rb
27
- - ext/extconf.rb
28
27
  - ext/Makefile
28
+ - ext/extconf.rb
29
29
  - ext/src/gdb-7.0.tar.bz2
30
- - patches/gdb-eval.patch
30
+ - gdb.rb.gemspec
31
31
  - patches/gdb-breakpoints.patch
32
+ - patches/gdb-eval.patch
32
33
  - patches/gdb-leak.patch
33
34
  - patches/gdb-strings.patch
34
35
  - scripts/ruby-gdb.py
35
- - gdb.rb.gemspec
36
36
  has_rdoc: true
37
37
  homepage: http://github.com/tmm1/gdb.rb
38
38
  licenses: []