[前][次][番号順一覧][スレッド一覧]

ruby-changes:6700

From: suke <ko1@a...>
Date: Fri, 25 Jul 2008 21:14:13 +0900 (JST)
Subject: [ruby-changes:6700] Ruby:r18216 (trunk): * ext/win32ole/win32ole.c (ole_invoke, add_event_callback,

suke	2008-07-25 21:13:57 +0900 (Fri, 25 Jul 2008)

  New Revision: 18216

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=18216

  Log:
    * ext/win32ole/win32ole.c (ole_invoke, add_event_callback,
      rescue_callback): refactoring.

  Modified files:
    trunk/ChangeLog
    trunk/ext/win32ole/win32ole.c

Index: ChangeLog
===================================================================
--- ChangeLog	(revision 18215)
+++ ChangeLog	(revision 18216)
@@ -1,3 +1,8 @@
+Fri Jul 25 21:09:32 2008  Masaki Suketa  <masaki.suketa@n...>
+
+	* ext/win32ole/win32ole.c (ole_invoke, add_event_callback,
+	  rescue_callback): refactoring.
+
 Fri Jul 25 20:52:44 2008  Masaki Suketa  <masaki.suketa@n...>
 
 	* test/win32ole/err_in_callback.rb : add test of raising
Index: ext/win32ole/win32ole.c
===================================================================
--- ext/win32ole/win32ole.c	(revision 18215)
+++ ext/win32ole/win32ole.c	(revision 18216)
@@ -118,7 +118,7 @@
 
 #define WC2VSTR(x) ole_wc2vstr((x), TRUE)
 
-#define WIN32OLE_VERSION "1.2.8"
+#define WIN32OLE_VERSION "1.2.9"
 
 typedef HRESULT (STDAPICALLTYPE FNCOCREATEINSTANCEEX)
     (REFCLSID, IUnknown*, DWORD, COSERVERINFO*, DWORD, MULTI_QI*);
@@ -3229,7 +3229,7 @@
     if (is_bracket) {
         DispID = DISPID_VALUE;
         argc += 1;
-        rb_funcall(paramS, rb_intern("unshift"), 1, cmd);
+	rb_ary_unshift(paramS, cmd);
     } else {
         wcmdname = ole_vstr2wc(cmd);
         hr = pole->pDispatch->lpVtbl->GetIDsOfNames( pole->pDispatch, &IID_NULL,
@@ -7511,12 +7511,10 @@
 {
     
     VALUE e = rb_errinfo();
-    VALUE c = rb_funcall(e, rb_intern("class"), 0);
     VALUE bt = rb_funcall(e, rb_intern("backtrace"), 0);
     VALUE msg = rb_funcall(e, rb_intern("message"), 0);
-    c = rb_funcall(c, rb_intern("to_s"), 0);
     bt = rb_ary_entry(bt, 0);
-    fprintf(stdout, "%s: %s (%s)\n", StringValuePtr(bt), StringValuePtr(msg), StringValuePtr(c));
+    fprintf(stdout, "%s: %s (%s)\n", StringValuePtr(bt), StringValuePtr(msg), rb_obj_classname(e));
     rb_backtrace();
     ruby_finalize();
     exit(-1);
@@ -8097,10 +8095,7 @@
         events = rb_ary_new();
         rb_ivar_set(obj, id_events, events);
     }
-    at = ole_search_event_at(events, event);
-    if (at >= 0) {
-        rb_ary_delete_at(events, at);
-    }
+    ole_delete_event(events, event);
     rb_ary_push(events, data);
 }
 

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]