init memory to 0
This commit is contained in:
parent
1281cf1d8d
commit
8d4d34a305
|
@ -16,5 +16,11 @@ void * dex_alloc(int size) {
|
|||
obstack_init(&dex_obstack);
|
||||
dex_obstack_initialized = true;
|
||||
}
|
||||
return obstack_alloc(&dex_obstack, size);
|
||||
void * mem = obstack_alloc(&dex_obstack, size);
|
||||
void * ptr = mem;
|
||||
for(int i = 0; i < size; i++)
|
||||
{
|
||||
*(char *)(mem + i) = '\0';
|
||||
}
|
||||
return mem;
|
||||
}
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
#include "ruby.h"
|
||||
#include <stdio.h>
|
||||
#include <libxslt/xslt.h>
|
||||
#include <libexslt/exslt.h>
|
||||
#include <libxslt/xsltInternals.h>
|
||||
|
@ -35,6 +36,7 @@ VALUE _new(VALUE self, VALUE dex, VALUE incl){
|
|||
dex_free(ptr);
|
||||
return Qnil;
|
||||
}
|
||||
|
||||
return Data_Wrap_Struct(c_dex, 0, dex_free, ptr);
|
||||
}
|
||||
|
||||
|
|
|
@ -10,6 +10,7 @@ class Dexterous
|
|||
end
|
||||
@@mutex ||= Mutex.new
|
||||
@@mutex.synchronize do
|
||||
puts dex
|
||||
@dex = CDexter.new(dex, incl)
|
||||
end
|
||||
end
|
||||
|
|
|
@ -12,6 +12,11 @@ class TestDexterous < Test::Unit::TestCase
|
|||
assert_equal "/c/sf/shopping", out["categories"][0]["href"]
|
||||
end
|
||||
|
||||
def test_yelp_xml
|
||||
@dex = Dexterous.new(File.read(File.dirname(__FILE__) + "/../../test/yelp-home.dex"))
|
||||
out = @dex.parse(:file => File.dirname(__FILE__) + "/../../test/yelp-home.html", :output => :xml)
|
||||
end
|
||||
|
||||
def test_simple
|
||||
@dex = Dexterous.new("hi" => "h1")
|
||||
assert_equal({"hi" => "Nick's Crispy Tacos"}, @dex.parse(:file => @file))
|
||||
|
|
Loading…
Reference in New Issue