public
Description: ruby lang (www.ruby-lang.org) svn mirror
Homepage: http://svn.ruby-lang.org/repos/ruby/
Clone URL: git://github.com/juretta/ruby.git
* ext/win32ole/win32ole.c: got rid of improper casts.


git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@18192 
b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (author)
Wed Jul 23 15:01:36 -0700 2008
commit  93742ee6a67c807b1fc0be75f93aea0072c04572
tree    0d6a7ebff5032a6e385ba6de3b64b775511bfd71
parent  8aabecdc6b4c60759590d8dfe64fbf4855cc7fed
...
 
 
 
 
1
2
3
...
1
2
3
4
5
6
7
0
@@ -1,3 +1,7 @@
0
+Thu Jul 24 07:01:13 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
0
+
0
+ * ext/win32ole/win32ole.c: got rid of improper casts.
0
+
0
 Wed Jul 23 23:19:15 2008 Yusuke Endoh <mame@tsg.ne.jp>
0
 
0
   * test/socket/test_tcp.rb (test_recvfrom): replace an irrelevant test
...
993
994
995
996
 
997
998
999
...
1289
1290
1291
1292
 
 
1293
1294
1295
...
1766
1767
1768
1769
 
1770
1771
1772
1773
1774
1775
 
1776
1777
1778
...
2150
2151
2152
2153
2154
2155
2156
 
2157
2158
2159
...
2162
2163
2164
2165
2166
 
2167
 
2168
2169
2170
...
2529
2530
2531
 
2532
2533
2534
...
2551
2552
2553
2554
2555
 
 
2556
2557
2558
...
2582
2583
2584
 
2585
2586
2587
...
2610
2611
2612
2613
2614
 
 
2615
2616
2617
...
3085
3086
3087
 
3088
3089
3090
...
3117
3118
3119
3120
 
 
3121
3122
3123
3124
3125
3126
 
3127
3128
3129
...
3863
3864
3865
 
3866
3867
3868
...
3885
3886
3887
3888
 
3889
3890
3891
3892
 
 
 
3893
3894
3895
 
 
 
3896
3897
3898
...
4358
4359
4360
 
4361
4362
4363
...
4374
4375
4376
4377
 
4378
4379
4380
4381
4382
4383
 
4384
4385
4386
...
4644
4645
4646
 
4647
4648
4649
4650
4651
4652
4653
 
 
4654
4655
4656
...
7851
7852
7853
 
7854
7855
7856
...
7864
7865
7866
7867
 
7868
 
7869
7870
7871
...
7879
7880
7881
7882
 
7883
7884
 
7885
7886
7887
...
7964
7965
7966
 
7967
7968
7969
...
7992
7993
7994
7995
 
7996
7997
7998
7999
8000
 
8001
8002
8003
...
993
994
995
 
996
997
998
999
...
1289
1290
1291
 
1292
1293
1294
1295
1296
...
1767
1768
1769
 
1770
1771
1772
1773
1774
1775
 
1776
1777
1778
1779
...
2151
2152
2153
 
2154
2155
2156
2157
2158
2159
2160
...
2163
2164
2165
 
 
2166
2167
2168
2169
2170
2171
...
2530
2531
2532
2533
2534
2535
2536
...
2553
2554
2555
 
 
2556
2557
2558
2559
2560
...
2584
2585
2586
2587
2588
2589
2590
...
2613
2614
2615
 
 
2616
2617
2618
2619
2620
...
3088
3089
3090
3091
3092
3093
3094
...
3121
3122
3123
 
3124
3125
3126
3127
3128
3129
3130
 
3131
3132
3133
3134
...
3868
3869
3870
3871
3872
3873
3874
...
3891
3892
3893
 
3894
3895
3896
 
 
3897
3898
3899
3900
3901
 
3902
3903
3904
3905
3906
3907
...
4367
4368
4369
4370
4371
4372
4373
...
4384
4385
4386
 
4387
4388
4389
4390
4391
4392
4393
4394
4395
4396
4397
...
4655
4656
4657
4658
4659
4660
4661
4662
4663
 
 
4664
4665
4666
4667
4668
...
7863
7864
7865
7866
7867
7868
7869
...
7877
7878
7879
 
7880
7881
7882
7883
7884
7885
...
7893
7894
7895
 
7896
7897
 
7898
7899
7900
7901
...
7978
7979
7980
7981
7982
7983
7984
...
8007
8008
8009
 
8010
8011
8012
8013
8014
8015
8016
8017
8018
8019
0
@@ -993,7 +993,7 @@ ole_cp2encoding(UINT cp)
0
    case CP_MACCP:
0
    case CP_THREAD_ACP:
0
    if (!pGetCPInfoEx) {
0
- pGetCPInfoEx = (BOOL (*)(UINT, DWORD, LPVOID))
0
+ pGetCPInfoEx = (BOOL (*)(UINT, DWORD, struct myCPINFOEX *))
0
      GetProcAddress(GetModuleHandle("kernel32"), "GetCPInfoEx");
0
     if (!pGetCPInfoEx) {
0
      pGetCPInfoEx = (void*)-1;
0
@@ -1289,7 +1289,8 @@ ole_ary_m_entry(VALUE val, long *pid)
0
     return obj;
0
 }
0
 
0
-static void * get_ptr_of_variant(VARIANT *pvar)
0
+static void *
0
+get_ptr_of_variant(VARIANT *pvar)
0
 {
0
     switch(V_VT(pvar)) {
0
     case VT_UI1:
0
@@ -1766,13 +1767,13 @@ ole_val2olevariantdata(VALUE val, VARTYPE vt, struct olevariantdata *pvar)
0
 
0
     if (((vt & ~VT_BYREF) == (VT_ARRAY | VT_UI1)) && TYPE(val) == T_STRING) {
0
         long len = RSTRING_LEN(val);
0
- char *pdest = NULL;
0
+ void *pdest = NULL;
0
         SAFEARRAY *p = NULL;
0
         SAFEARRAY *psa = SafeArrayCreateVector(VT_UI1, 0, len);
0
         if (!psa) {
0
             rb_raise(rb_eRuntimeError, "fail to SafeArrayCreateVector");
0
         }
0
- hr = SafeArrayAccessData(psa, (void **)&pdest);
0
+ hr = SafeArrayAccessData(psa, &pdest);
0
         if (SUCCEEDED(hr)) {
0
             memcpy(pdest, RSTRING_PTR(val), len);
0
             SafeArrayUnaccessData(psa);
0
@@ -2150,10 +2151,10 @@ ole_variant2val(VARIANT *pvar)
0
 
0
     case VT_UNKNOWN:
0
     {
0
-
0
         /* get IDispatch interface from IUnknown interface */
0
         IUnknown *punk;
0
         IDispatch *pDispatch;
0
+ void *p;
0
         HRESULT hr;
0
 
0
         if (V_ISBYREF(pvar))
0
@@ -2162,9 +2163,9 @@ ole_variant2val(VARIANT *pvar)
0
             punk = V_UNKNOWN(pvar);
0
 
0
         if(punk != NULL) {
0
- hr = punk->lpVtbl->QueryInterface(punk, &IID_IDispatch,
0
- (void **)&pDispatch);
0
+ hr = punk->lpVtbl->QueryInterface(punk, &IID_IDispatch, &p);
0
            if(SUCCEEDED(hr)) {
0
+ pDispatch = p;
0
                obj = create_win32ole_object(cWIN32OLE, pDispatch, 0, 0);
0
            }
0
         }
0
@@ -2529,6 +2530,7 @@ ole_bind_obj(VALUE moniker, int argc, VALUE *argv, VALUE self)
0
     IBindCtx *pBindCtx;
0
     IMoniker *pMoniker;
0
     IDispatch *pDispatch;
0
+ void *p;
0
     HRESULT hr;
0
     OLECHAR *pbuf;
0
     ULONG eaten = 0;
0
@@ -2551,8 +2553,8 @@ ole_bind_obj(VALUE moniker, int argc, VALUE *argv, VALUE self)
0
                   StringValuePtr(moniker));
0
     }
0
     hr = pMoniker->lpVtbl->BindToObject(pMoniker, pBindCtx, NULL,
0
- &IID_IDispatch,
0
- (void**)&pDispatch);
0
+ &IID_IDispatch, &p);
0
+ pDispatch = p;
0
     OLE_RELEASE(pMoniker);
0
     OLE_RELEASE(pBindCtx);
0
 
0
@@ -2582,6 +2584,7 @@ fole_s_connect(int argc, VALUE *argv, VALUE self)
0
     CLSID clsid;
0
     OLECHAR *pBuf;
0
     IDispatch *pDispatch;
0
+ void *p;
0
     IUnknown *pUnknown;
0
 
0
     rb_secure(4);
0
@@ -2610,8 +2613,8 @@ fole_s_connect(int argc, VALUE *argv, VALUE self)
0
         ole_raise(hr, eWIN32OLERuntimeError,
0
                   "OLE server `%s' not running", StringValuePtr(svr_name));
0
     }
0
- hr = pUnknown->lpVtbl->QueryInterface(pUnknown, &IID_IDispatch,
0
- (void **)&pDispatch);
0
+ hr = pUnknown->lpVtbl->QueryInterface(pUnknown, &IID_IDispatch, &p);
0
+ pDispatch = p;
0
     if(FAILED(hr)) {
0
         OLE_RELEASE(pUnknown);
0
         ole_raise(hr, eWIN32OLERuntimeError,
0
@@ -3085,6 +3088,7 @@ fole_initialize(int argc, VALUE *argv, VALUE self)
0
     CLSID clsid;
0
     OLECHAR *pBuf;
0
     IDispatch *pDispatch;
0
+ void *p;
0
 
0
     rb_secure(4);
0
     rb_call_super(0, 0);
0
@@ -3117,13 +3121,14 @@ fole_initialize(int argc, VALUE *argv, VALUE self)
0
 
0
     /* get IDispatch interface */
0
     hr = CoCreateInstance(&clsid, NULL, CLSCTX_INPROC_SERVER | CLSCTX_LOCAL_SERVER,
0
- &IID_IDispatch, (void**)&pDispatch);
0
+ &IID_IDispatch, &p);
0
+ pDispatch = p;
0
     if(FAILED(hr)) {
0
         ole_raise(hr, eWIN32OLERuntimeError,
0
                   "failed to create WIN32OLE object from `%s'",
0
                   StringValuePtr(svr_name));
0
     }
0
-
0
+
0
     ole_set_member(self, pDispatch);
0
     return self;
0
 }
0
@@ -3863,6 +3868,7 @@ fole_each(VALUE self)
0
     VARIANT result;
0
     HRESULT hr;
0
     IEnumVARIANT *pEnum = NULL;
0
+ void *p;
0
 
0
     RETURN_ENUMERATOR(self, 0, 0);
0
 
0
@@ -3885,14 +3891,17 @@ fole_each(VALUE self)
0
         ole_raise(hr, eWIN32OLERuntimeError, "failed to get IEnum Interface");
0
     }
0
 
0
- if (V_VT(&result) == VT_UNKNOWN)
0
+ if (V_VT(&result) == VT_UNKNOWN) {
0
         hr = V_UNKNOWN(&result)->lpVtbl->QueryInterface(V_UNKNOWN(&result),
0
                                                         &IID_IEnumVARIANT,
0
- (void**)&pEnum);
0
- else if (V_VT(&result) == VT_DISPATCH)
0
+ &p);
0
+ pEnum = p;
0
+ } else if (V_VT(&result) == VT_DISPATCH) {
0
         hr = V_DISPATCH(&result)->lpVtbl->QueryInterface(V_DISPATCH(&result),
0
                                                          &IID_IEnumVARIANT,
0
- (void**)&pEnum);
0
+ &p);
0
+ pEnum = p;
0
+ }
0
     if (FAILED(hr) || !pEnum) {
0
         VariantClear(&result);
0
         ole_raise(hr, rb_eRuntimeError, "failed to get IEnum Interface");
0
@@ -4358,6 +4367,7 @@ fole_query_interface(VALUE self, VALUE str_iid)
0
     IID iid;
0
     struct oledata *pole;
0
     IDispatch *pDispatch;
0
+ void *p;
0
          
0
     pBuf = ole_vstr2wc(str_iid);
0
     hr = CLSIDFromString(pBuf, &iid);
0
@@ -4374,13 +4384,14 @@ fole_query_interface(VALUE self, VALUE str_iid)
0
     }
0
 
0
     hr = pole->pDispatch->lpVtbl->QueryInterface(pole->pDispatch, &iid,
0
- (void **)&pDispatch);
0
+ &p);
0
     if(FAILED(hr)) {
0
         ole_raise(hr, eWIN32OLERuntimeError,
0
                   "failed to get interface `%s'",
0
                   StringValuePtr(str_iid));
0
     }
0
 
0
+ pDispatch = p;
0
     return create_win32ole_object(cWIN32OLE, pDispatch, 0, 0);
0
 }
0
 
0
@@ -4644,13 +4655,14 @@ fole_activex_initialize(VALUE self)
0
 {
0
     struct oledata *pole;
0
     IPersistMemory *pPersistMemory;
0
+ void *p;
0
 
0
     HRESULT hr = S_OK;
0
 
0
     OLEData_Get_Struct(self, pole);
0
 
0
- hr = pole->pDispatch->lpVtbl->QueryInterface(pole->pDispatch, &IID_IPersistMemory,
0
- (void **)&pPersistMemory);
0
+ hr = pole->pDispatch->lpVtbl->QueryInterface(pole->pDispatch, &IID_IPersistMemory, &p);
0
+ pPersistMemory = p;
0
     if (SUCCEEDED(hr)) {
0
         hr = pPersistMemory->lpVtbl->InitNew(pPersistMemory);
0
         OLE_RELEASE(pPersistMemory);
0
@@ -7851,6 +7863,7 @@ find_default_source(VALUE ole, IID *piid, ITypeInfo **ppTypeInfo)
0
     HRESULT hr;
0
     IProvideClassInfo2 *pProvideClassInfo2;
0
     IProvideClassInfo *pProvideClassInfo;
0
+ void *p;
0
 
0
     IDispatch *pDispatch;
0
     ITypeInfo *pTypeInfo;
0
@@ -7864,8 +7877,9 @@ find_default_source(VALUE ole, IID *piid, ITypeInfo **ppTypeInfo)
0
     pDispatch = pole->pDispatch;
0
     hr = pDispatch->lpVtbl->QueryInterface(pDispatch,
0
                                            &IID_IProvideClassInfo2,
0
- (void**)&pProvideClassInfo2);
0
+ &p);
0
     if (SUCCEEDED(hr)) {
0
+ pProvideClassInfo2 = p;
0
         hr = pProvideClassInfo2->lpVtbl->GetGUID(pProvideClassInfo2,
0
                                                  GUIDKIND_DEFAULT_SOURCE_DISP_IID,
0
                                                  piid);
0
@@ -7879,9 +7893,9 @@ find_default_source(VALUE ole, IID *piid, ITypeInfo **ppTypeInfo)
0
     }
0
     hr = pDispatch->lpVtbl->QueryInterface(pDispatch,
0
                                            &IID_IProvideClassInfo,
0
- (void**)&pProvideClassInfo);
0
+ &p);
0
     if (SUCCEEDED(hr)) {
0
-
0
+ pProvideClassInfo = p;
0
         hr = pProvideClassInfo->lpVtbl->GetClassInfo(pProvideClassInfo,
0
                                                      &pTypeInfo);
0
         OLE_RELEASE(pProvideClassInfo);
0
@@ -7964,6 +7978,7 @@ ev_advise(int argc, VALUE *argv, VALUE self)
0
     IEVENTSINKOBJ *pIEV;
0
     DWORD dwCookie;
0
     struct oleeventdata *poleev;
0
+ void *p;
0
 
0
     rb_secure(4);
0
     rb_scan_args(argc, argv, "11", &ole, &itf);
0
@@ -7992,12 +8007,13 @@ ev_advise(int argc, VALUE *argv, VALUE self)
0
     pDispatch = pole->pDispatch;
0
     hr = pDispatch->lpVtbl->QueryInterface(pDispatch,
0
                                            &IID_IConnectionPointContainer,
0
- (void **)&pContainer);
0
+ &p);
0
     if (FAILED(hr)) {
0
         OLE_RELEASE(pTypeInfo);
0
         ole_raise(hr, rb_eRuntimeError,
0
                   "failed to query IConnectionPointContainer");
0
     }
0
+ pContainer = p;
0
 
0
     hr = pContainer->lpVtbl->FindConnectionPoint(pContainer,
0
                                                  &iid,

Comments

    No one has commented yet.