Mercurial > hg > xemacs-beta
comparison src/elhash.c @ 5438:8d29f1c4bb98
Merge with 21.5 trunk.
author | Mats Lidell <matsl@xemacs.org> |
---|---|
date | Fri, 26 Nov 2010 06:43:36 +0100 |
parents | 308d34e9f07d c096d8051f89 |
children | 6506fcb40fcf |
comparison
equal
deleted
inserted
replaced
5437:002cb5224e4f | 5438:8d29f1c4bb98 |
---|---|
729 static int | 729 static int |
730 hash_table_size_validate (Lisp_Object UNUSED (keyword), Lisp_Object value, | 730 hash_table_size_validate (Lisp_Object UNUSED (keyword), Lisp_Object value, |
731 Error_Behavior errb) | 731 Error_Behavior errb) |
732 { | 732 { |
733 if (NATNUMP (value)) | 733 if (NATNUMP (value)) |
734 return 1; | 734 { |
735 | 735 if (BIGNUMP (value)) |
736 maybe_signal_error_1 (Qwrong_type_argument, list2 (Qnatnump, value), | 736 { |
737 Qhash_table, errb); | 737 /* hash_table_size() can't handle excessively large sizes. */ |
738 maybe_signal_error_1 (Qargs_out_of_range, | |
739 list3 (value, Qzero, | |
740 make_integer (EMACS_INT_MAX)), | |
741 Qhash_table, errb); | |
742 return 0; | |
743 } | |
744 else | |
745 { | |
746 return 1; | |
747 } | |
748 } | |
749 else | |
750 { | |
751 maybe_signal_error_1 (Qwrong_type_argument, list2 (Qnatnump, value), | |
752 Qhash_table, errb); | |
753 } | |
754 | |
738 return 0; | 755 return 0; |
739 } | 756 } |
740 | 757 |
741 static Elemcount | 758 static Elemcount |
742 decode_hash_table_size (Lisp_Object obj) | 759 decode_hash_table_size (Lisp_Object obj) |