aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--ruby.c22
-rw-r--r--version.h6
3 files changed, 22 insertions, 12 deletions
diff --git a/ChangeLog b/ChangeLog
index 97c8ea5d6c..92c5f02161 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Fri May 18 11:12:39 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * ruby.c (DllMain, ruby_init_loadpath): use DLL instance handle given
+ to DllMain instead of VirtualQuery so that loadpath becomes relative
+ from the DLL on WinCE too.
+
Thu May 17 17:03:11 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* misc/ruby-style.el (ruby-style-label-indent): for yacc rules.
diff --git a/ruby.c b/ruby.c
index 045697c89a..6dec7a2c8c 100644
--- a/ruby.c
+++ b/ruby.c
@@ -259,6 +259,18 @@ translate_char(char *p, int from, int to)
}
#endif
+#if defined _WIN32 || defined __CYGWIN__
+static HMODULE libruby;
+
+BOOL WINAPI
+DllMain(HINSTANCE dll, DWORD reason, LPVOID reserved)
+{
+ if (reason == DLL_PROCESS_ATTACH)
+ libruby = dll;
+ return TRUE;
+}
+#endif
+
void
ruby_init_loadpath(void)
{
@@ -266,16 +278,8 @@ ruby_init_loadpath(void)
char libpath[MAXPATHLEN + 1];
char *p;
int rest;
+
#if defined _WIN32 || defined __CYGWIN__
- HMODULE libruby = NULL;
- MEMORY_BASIC_INFORMATION m;
-
-#ifndef _WIN32_WCE
- memset(&m, 0, sizeof(m));
- if (VirtualQuery(ruby_init_loadpath, &m, sizeof(m))
- && m.State == MEM_COMMIT)
- libruby = (HMODULE) m.AllocationBase;
-#endif
GetModuleFileName(libruby, libpath, sizeof libpath);
#elif defined(DJGPP)
extern char *__dos_argv0;
diff --git a/version.h b/version.h
index f882c2cdc0..3052c9ee7c 100644
--- a/version.h
+++ b/version.h
@@ -1,7 +1,7 @@
#define RUBY_VERSION "1.9.0"
-#define RUBY_RELEASE_DATE "2007-05-17"
+#define RUBY_RELEASE_DATE "2007-05-18"
#define RUBY_VERSION_CODE 190
-#define RUBY_RELEASE_CODE 20070517
+#define RUBY_RELEASE_CODE 20070518
#define RUBY_PATCHLEVEL 0
#define RUBY_VERSION_MAJOR 1
@@ -9,7 +9,7 @@
#define RUBY_VERSION_TEENY 0
#define RUBY_RELEASE_YEAR 2007
#define RUBY_RELEASE_MONTH 5
-#define RUBY_RELEASE_DAY 17
+#define RUBY_RELEASE_DAY 18
#ifdef RUBY_EXTERN
RUBY_EXTERN const char ruby_version[];