aboutsummaryrefslogtreecommitdiffstats
path: root/ext/dl/test
diff options
context:
space:
mode:
authorttate <ttate@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2006-06-30 18:05:40 +0000
committerttate <ttate@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2006-06-30 18:05:40 +0000
commite587cf273099ee1e0dbaafdc47f220ea8b81e2e9 (patch)
tree2c0535cb92a6fdc97fecfdb8bfec515d8c4af6dd /ext/dl/test
parentabbe9742673fbfc2962a2e11e365e70843e59e9f (diff)
downloadruby-e587cf273099ee1e0dbaafdc47f220ea8b81e2e9.tar.gz
fixed the alignment problems discussed in [ruby-dev:28667].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10440 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/dl/test')
-rw-r--r--ext/dl/test/test_import.rb15
1 files changed, 9 insertions, 6 deletions
diff --git a/ext/dl/test/test_import.rb b/ext/dl/test/test_import.rb
index 6df7b9cff6..f0694637eb 100644
--- a/ext/dl/test/test_import.rb
+++ b/ext/dl/test/test_import.rb
@@ -28,8 +28,9 @@ module DL
"int tz_dsttime",
]
MyStruct = struct [
- "int num[10]",
- "unsigned char buff[8]",
+ "short num[5]",
+ "char c",
+ "unsigned char buff[7]",
]
CallCallback = bind("void call_callback(void*, void*)"){|ptr1, ptr2|
@@ -93,10 +94,12 @@ module DL
def test_struct()
s = LIBC::MyStruct.malloc()
- s.num = [0,1,2,3,4,5,6,7,8,9]
- s.buff = "0123456\377"
- assert_equal([0,1,2,3,4,5,6,7,8,9], s.num)
- assert_equal([?0,?1,?2,?3,?4,?5,?6,?\377], s.buff)
+ s.num = [0,1,2,3,4]
+ s.c = ?a
+ s.buff = "012345\377"
+ assert_equal([0,1,2,3,4], s.num)
+ assert_equal(?a, s.c)
+ assert_equal([?0,?1,?2,?3,?4,?5,?\377], s.buff)
end
def test_gettimeofday()