win32ole 1.9.2 → 1.9.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d86e74a4eb46131e265c72a5519aef608d0661971d2264c6455684a243271896
4
- data.tar.gz: ddd1753f0c7dc074bb44d77b7e86a4b68a65cee1b69bbd8584eafd0a9158d5c9
3
+ metadata.gz: 60ae49baae352c2f1161ebccd333e2ab3cb0ef1e95211204db6e298cf52c690f
4
+ data.tar.gz: 98b6f791a222fca70052026f41aa9196699d9e0ec1f70f566aa1dfe56ae4cbd1
5
5
  SHA512:
6
- metadata.gz: ae998719808517629032bb7c296f5b6358db9b1ce4e8d0243dbefb152c71e555f2ba8bb808ba2e4699b92da8af9cc9ff2f6d551bb08b5bbc920a0aaa839d8f84
7
- data.tar.gz: 20e46d83bd753ddd9504546772ebf36d89632a55cd5e2e5648323019df6450313fbc079d0498e86e78f476edf2aaaf8203b04486cc0c2540beee57a5977cfa32
6
+ metadata.gz: da6692548b7478d14e5c33cbaaac463dbb861d0cd29745211c551cfe6654fa709a76ea03e27c3003e3194c00ee2ff2c2e037c50426d3a81d364a46420602da76
7
+ data.tar.gz: 027be0e5f73f6c7e855ed916b0055c647eee12bab71a666f7dd3df4355ab3894f61bba5a3a75446e142c3e28dd8d12372a525fe3711991e0772c9bad207aefd9
@@ -27,7 +27,7 @@
27
27
  const IID IID_IMultiLanguage2 = {0xDCCFC164, 0x2B38, 0x11d2, {0xB7, 0xEC, 0x00, 0xC0, 0x4F, 0x8F, 0x5D, 0x9A}};
28
28
  #endif
29
29
 
30
- #define WIN32OLE_VERSION "1.9.2"
30
+ #define WIN32OLE_VERSION "1.9.3"
31
31
 
32
32
  typedef HRESULT (STDAPICALLTYPE FNCOCREATEINSTANCEEX)
33
33
  (REFCLSID, IUnknown*, DWORD, COSERVERINFO*, DWORD, MULTI_QI*);
@@ -929,7 +929,13 @@ ole_mb2wc(char *pm, int len, UINT cp)
929
929
  #endif
930
930
  }
931
931
  size = MultiByteToWideChar(cp, 0, pm, len, NULL, 0);
932
+ if (!size) {
933
+ ole_raise(HRESULT_LASTERROR(), eWIN32OLERuntimeError, "fail to convert CP%d to Unicode", cp);
934
+ }
932
935
  pw = SysAllocStringLen(NULL, size);
936
+ if (!pw) {
937
+ ole_raise(HRESULT_LASTERROR(), eWIN32OLERuntimeError, "fail to allocate Unicode string");
938
+ }
933
939
  pw[size-1] = 0;
934
940
  MultiByteToWideChar(cp, 0, pm, len, pw, size);
935
941
  return pw;
@@ -6,4 +6,6 @@ extern VALUE eWIN32OLEQueryInterfaceError;
6
6
  NORETURN(PRINTF_ARGS(void ole_raise(HRESULT hr, VALUE ecs, const char *fmt, ...), 3, 4));
7
7
  void Init_win32ole_error(void);
8
8
 
9
+ #define HRESULT_LASTERROR() HRESULT_FROM_WIN32(GetLastError())
10
+
9
11
  #endif
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: win32ole
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.9.2
4
+ version: 1.9.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Masaki Suketa
8
- autorequire:
9
8
  bindir: exe
10
9
  cert_chain: []
11
- date: 2025-04-14 00:00:00.000000000 Z
10
+ date: 2026-02-20 00:00:00.000000000 Z
12
11
  dependencies: []
13
12
  description: Provides an interface for OLE Automation in Ruby
14
13
  email:
@@ -67,7 +66,6 @@ licenses:
67
66
  metadata:
68
67
  homepage_uri: https://github.com/ruby/win32ole
69
68
  source_code_uri: https://github.com/ruby/win32ole
70
- post_install_message:
71
69
  rdoc_options: []
72
70
  require_paths:
73
71
  - lib
@@ -82,8 +80,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
82
80
  - !ruby/object:Gem::Version
83
81
  version: '0'
84
82
  requirements: []
85
- rubygems_version: 3.5.11
86
- signing_key:
83
+ rubygems_version: 3.6.9
87
84
  specification_version: 4
88
85
  summary: Provides an interface for OLE Automation in Ruby
89
86
  test_files: []