summaryrefslogtreecommitdiffstats
path: root/string.c
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2004-11-03 11:34:57 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2004-11-03 11:34:57 +0000
commit518d598521caa04911ed7901f451cd6277ccfb4a (patch)
tree16a63a9cf6c9e788c17a54c6a81c243ec8938dd2 /string.c
parenteda6be71eb9eb35f6f8650d888b3d161d8a8617a (diff)
downloadruby-518d598521caa04911ed7901f451cd6277ccfb4a.tar.gz
ruby-518d598521caa04911ed7901f451cd6277ccfb4a.tar.xz
ruby-518d598521caa04911ed7901f451cd6277ccfb4a.zip
* array.c (rb_ary_uniq_bang): do not push frozen string from hash
table. [ruby-dev:24695] * array.c (rb_ary_and): ditto. * array.c (rb_ary_or): ditto. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@7190 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'string.c')
-rw-r--r--string.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/string.c b/string.c
index 43c8f7908..6592421f4 100644
--- a/string.c
+++ b/string.c
@@ -4453,7 +4453,7 @@ rb_str_sum(argc, argv, str)
return sum;
}
else {
- unsigned int sum = 0;
+ unsigned long sum = 0;
while (p < pend) {
str_mod_check(str, ptr, len);
@@ -4461,7 +4461,7 @@ rb_str_sum(argc, argv, str)
p++;
}
if (bits != 0) {
- sum &= (1<<bits)-1;
+ sum &= (((unsigned long)1)<<bits)-1;
}
return rb_int2inum(sum);
}