summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoryugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-10-31 13:05:32 +0000
committeryugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-10-31 13:05:32 +0000
commit751e32b705c87796ab2e609216687ae5e96cc2d6 (patch)
tree8f3326ce7da0a8471a0830d96688c654ed1d4b61
parenta6c9ea762e908ee663d8e1f6861232a1052a6bd3 (diff)
merges r24839 from trunk into ruby_1_9_1.
-- * dln.c (aix_loaderror): get rid of using uninitialized value in the case loadquery fails. fixed wrong index variable usage. see [ruby-core:25479]. git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_9_1@25597 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog6
-rw-r--r--dln.c13
-rw-r--r--version.h2
3 files changed, 14 insertions, 7 deletions
diff --git a/ChangeLog b/ChangeLog
index 3298222ab..d1adeec4e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Fri Sep 11 09:45:11 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * dln.c (aix_loaderror): get rid of using uninitialized value in the
+ case loadquery fails. fixed wrong index variable usage. see
+ [ruby-core:25479].
+
Fri Sep 11 01:14:00 2009 Marc-Andre Lafortune <ruby-core@marc-andre.ca>
* lib/net/http.rb (fetch): rdoc fix, patch by Arthur Schreiber.
diff --git a/dln.c b/dln.c
index 8826e94c5..167283897 100644
--- a/dln.c
+++ b/dln.c
@@ -1155,10 +1155,10 @@ dln_strerror(void)
static void
aix_loaderror(const char *pathname)
{
- char *message[8], errbuf[1024];
+ char *message[1024], errbuf[1024];
int i,j;
- struct errtab {
+ static const struct errtab {
int errnum;
char *errstr;
} load_errtab[] = {
@@ -1179,15 +1179,16 @@ aix_loaderror(const char *pathname)
#define LOAD_ERRTAB_LEN (sizeof(load_errtab)/sizeof(load_errtab[0]))
#define ERRBUF_APPEND(s) strncat(errbuf, s, sizeof(errbuf)-strlen(errbuf)-1)
- snprintf(errbuf, 1024, "load failed - %s ", pathname);
+ snprintf(errbuf, sizeof(errbuf), "load failed - %s ", pathname);
- if (!loadquery(1, &message[0], sizeof(message)))
+ message[0] = NULL;
+ if (!loadquery(L_GETMESSAGE, &message[0], sizeof(message)))
ERRBUF_APPEND(strerror(errno));
for(i = 0; message[i] && *message[i]; i++) {
int nerr = atoi(message[i]);
for (j=0; j<LOAD_ERRTAB_LEN; j++) {
- if (nerr == load_errtab[i].errnum && load_errtab[i].errstr)
- ERRBUF_APPEND(load_errtab[i].errstr);
+ if (nerr == load_errtab[j].errnum && load_errtab[j].errstr)
+ ERRBUF_APPEND(load_errtab[j].errstr);
}
while (isdigit(*message[i])) message[i]++;
ERRBUF_APPEND(message[i]);
diff --git a/version.h b/version.h
index 0076b384a..2fd295041 100644
--- a/version.h
+++ b/version.h
@@ -1,5 +1,5 @@
#define RUBY_VERSION "1.9.1"
-#define RUBY_PATCHLEVEL 322
+#define RUBY_PATCHLEVEL 323
#define RUBY_VERSION_MAJOR 1
#define RUBY_VERSION_MINOR 9
#define RUBY_VERSION_TEENY 1