Commit Graph

738 Commits

Author SHA1 Message Date
Robert Shearman
6bfae1a1b7 - IRpcStubBuffer_Disconnect can be called multiple times.
- Release TypeLib when freeing stub buffer.
2005-07-19 20:00:07 +00:00
Robert Shearman
f29a1315ec Activate ITypeLib, ITypeInfo and IEnumVARIANT Marshalers. 2005-07-19 19:43:54 +00:00
Robert Shearman
0648ab6131 Remove RegisterTypeLib hack. 2005-07-19 19:43:37 +00:00
Robert Shearman
d8780c7546 Fix confusion between number of characters and number of bytes in
unmarshaling BSTRs. Convert it all to characters for consistency with
the BSTR_User* routines.
2005-07-19 19:42:50 +00:00
Robert Shearman
500c41b75e Support VT_BYREF|VT_I4 in _copy_arg. 2005-07-19 19:13:45 +00:00
Robert Shearman
d2e2e851da Marshal and unmarshal TKIND_ENUM and TKIND_ALIAS. 2005-07-19 19:13:23 +00:00
Alex Villacís Lasso
43076139c3 Fix GIF palette allocation, by relying on ColorCount instead of
SColorResolution.
2005-07-19 11:38:25 +00:00
Alex Villacís Lasso
3153aa9131 Ensure that underflowing negative float is represented as a positive
0, just as native oleaut32.
2005-07-19 11:38:12 +00:00
Alex Villacís Lasso
324267c4a9 Test for behavior of negative underflow formatting. 2005-07-18 10:33:12 +00:00
Mike McCormack
fc200d0ca7 Interlocked LONG* gcc warning fixes. 2005-07-11 10:25:19 +00:00
Mike McCormack
d7b9a23afd gcc 4.0 -Wpointer-sign fixes (Reg* functions). 2005-07-06 19:08:05 +00:00
Francois Gouget
c7dcf642ea Add trailing '\n's to ok() calls. 2005-07-06 15:46:47 +00:00
Stefan Huehner
17ed5537e7 Fix some more -Wmissing-declarations warnings. 2005-07-05 11:05:50 +00:00
Robert Shearman
27407fad35 Document active object and variant functions. 2005-07-05 11:02:19 +00:00
Robert Shearman
545aefa18f Rename OLEAUT32_Dll* Functions to Dll*. 2005-06-29 20:16:41 +00:00
Robert Shearman
cbc3af8ca5 - Conversions between variants types of the same size should ignore
overflows.
- Tests for this behaviour.
2005-06-29 20:15:32 +00:00
Robert Shearman
fb42af123b Add a generic TYPEDESC VT to VARIANT VT mapper so we can use the
standard Variant* routines. Use this new function to properly copy &
de-reference the return value.
2005-06-29 20:15:00 +00:00
Huw Davies
fe311461a7 Cope with the index in a import table entry being a typeinfo index
rather than a guid offset.
2005-06-29 19:18:25 +00:00
Huw Davies
a2c58e238f Add comments describing the first DWORD in an import table entry. 2005-06-28 13:52:23 +00:00
Michael Stefaniuc
8e81d45732 - VarCmp: handle comparision of VT_EMPTY with an integer
- small comment fix
2005-06-28 10:54:07 +00:00
Stefan Huehner
ffe53258aa Fix some -Wstrict-prototypes warnings. 2005-06-27 09:57:28 +00:00
Michael Stefaniuc
0b1f8cdf4d - more VarFormat fixes for number formats (exponent, mixed '#' and '0'
in formats, rounding, etc). Simplify the code.
- previous VarFormat todo_wine tests pass now + add more tests
2005-06-23 09:48:07 +00:00
Stefan Huehner
863a4b1488 Fix some more -Wstrict-prototypes warnings. 2005-06-21 20:53:13 +00:00
Stefan Huehner
ac6f562b52 Fix more -Wstrict-prototypes warnings. 2005-06-20 14:18:03 +00:00
Francois Gouget
6394a15314 Assorted spelling fixes. 2005-06-17 20:59:49 +00:00
Stefan Huehner
03cc8c4181 Remove some -Wstrict-prototypes warnings. 2005-06-17 10:11:37 +00:00
Mike McCormack
65ad7da1f7 Fix some declaration and write string warnings. 2005-06-16 10:45:25 +00:00
Saulius Krasuckas
8272074b85 Change (long long) to (LONGLONG) to compile with MSVC. 2005-06-14 12:25:29 +00:00
Michael Stefaniuc
b9208137c1 - Fix VarFormat for formats that mix '0' and '#' in the whole number
part.
- Fix VarFormat for negative exponent formats.
- Add tests for the above + a couple of "todo_wine"'s.
2005-06-14 11:39:32 +00:00
Alexandre Julliard
c2d5b444b3 Moved the NONAMELESSUNION/STRUCT macros to wine/test.h so that they
can be used in all the test.
2005-06-13 12:10:54 +00:00
Marcus Meissner
970ae8d0ba Corrected string length method in ITypeLib::IsName() and FindName()
for LPOLESTR type.
2005-06-13 09:59:55 +00:00
Robert Shearman
1a76541733 - Don't print out cryptic message if IDispatch or IUnknown object is
just NULL.
- puArgErr is a ref pointer so we have to provide a dummy pointer if
  it is NULL.
- Fail gracefully and notify caller if we ran out of memoy or if
  variant copying failed.
2005-06-12 10:42:36 +00:00
Robert Shearman
3fe5a1eb62 Clear out parameters to stop bad pointers lying around in memory if
the function doesn't set them to anything.
2005-06-10 19:31:45 +00:00
Robert Shearman
1329f87d46 - The typelib marshaler should only free the memory it actually allocated.
- Add special cases for two lesser used types that aren't
  sizeof(DWORD) sized.
2005-06-09 09:43:38 +00:00
Michael Stefaniuc
3b37099451 - implement handling of exponents (e+,e-,E+,E-) when parsing number
formats
- fix a small cut'n'paste error in the comments
2005-06-08 18:32:52 +00:00
Marcus Meissner
4dd845ed53 Fixed IType::Invoke in regards to handling propertyget variables
longer than 4 bytes (like VT_DATE).
2005-06-08 18:32:09 +00:00
Dmitry Timoshkov
eba47f1dfe Make remaining OLE interface vtables const. 2005-06-06 19:50:35 +00:00
Marcus Meissner
c834e6a96f Added testcases for OLE Picture handling.
Implemented PICTYPE_NONE loading.
Cleaned up stream loading, handle "lt" magic.
Fixed some small problems exposed by tests against native.
2005-06-06 10:03:58 +00:00
Jacek Caban
f863bb59f9 Test only stdole32.tlb as we don't have olepro32.dll in Wine. 2005-06-05 18:04:54 +00:00
Robert Shearman
c6296c418f If we are accessing a method from a superclass then we need to use the
superclass's ITypeInfo otherwise we could get errors when accessing
hreftypes that aren't present in the subclass.
2005-06-01 11:03:40 +00:00
Robert Shearman
9ddf17bfa7 - Fix the return values from QueryPathOfRegTypeLib.
- Open registry key with least access rights necessary.
- Documentation updates.
2005-06-01 11:03:29 +00:00
Robert Shearman
61d862540b DispInvoke is correct so there is no need to print a fixme. 2005-06-01 11:03:05 +00:00
Marcus Meissner
e2511e195e Added VarMonthName() implementation. 2005-05-29 20:17:30 +00:00
Michael Stefaniuc
485d140b36 Tests for VarAdd. 2005-05-29 20:00:50 +00:00
Michael Stefaniuc
948dd66603 - Reimplement VarAdd, had missing functionality and wrong behaviour.
- Fix a typo in VarMul.
2005-05-29 20:00:31 +00:00
Michael Stefaniuc
d0dbae3b18 Tests for VarMul(). 2005-05-23 11:46:36 +00:00
Michael Stefaniuc
0f64aaa807 Reimplement VarMul(). It can multiply now all variants that the native
(WinXP) function supports too.
2005-05-23 11:46:17 +00:00
Richard Cohen
97bc8f6dc7 - Remove unused macro.
- Check for VT_I8 before testing it.
- VarMod returns DISP_E_OVERFLOW not E_INVALIDARG.
2005-05-23 10:26:32 +00:00
Michael Stefaniuc
28faa92c7f Fix VariantChangeType: calls to VarDecFromCy and VarDecFromDisp had
source and destination swapped.
2005-05-23 09:50:50 +00:00
Richard Cohen
25ab9f2c0f Check if VT_R8 and VT_INT_PTR are supported before testing them. 2005-05-20 19:00:02 +00:00
Pierre d'Herbemont
342da59b0c Remove stdlib.h inclusion if winsock.h is included. 2005-05-18 15:33:20 +00:00
Robert Shearman
5ef4748c7c Use I_RpcGetBuffer instead of HeapReAlloc for getting the Buffer
memory.
2005-05-11 15:56:59 +00:00
Alexandre Julliard
34fa35dc99 Added rules for building import libraries in the individual dll
makefiles, and added support for building a .def.a static import
library too.
2005-05-09 14:42:30 +00:00
Alexandre Julliard
d62356aa1e Added rules to build import libraries in the individual dll makefiles.
Generate import libraries with the right name right away instead of
using an intermediate .spec.def file.
2005-05-07 12:39:52 +00:00
Vincent Béron
0fa5e855fb Use SUBLANG_NEUTRAL for French resources. 2005-05-04 09:52:47 +00:00
Alex Villacís Lasso
4376140a4f - Fix leftover negative sign in height parameter for transparent
bitmap.
- Properly announce whether bitmap is transparent in get_Attributes.
- GIF transparency is now palette-index based, instead of RGB based.
- Keep original bitmap and XOR mask separate, so that get_Handle
  returns original bitmap.
2005-04-22 19:05:05 +00:00
Daniel Remenak
d46cc36347 Remove unused variable in _copy_arg. 2005-04-14 11:32:10 +00:00
Alex Villacís Lasso
61761e2278 - Fix leftover negative sign in height parameter for transparent
bitmap.
- Properly announce whether bitmap is transparent in get_Attributes.
- GIF transparency is now palette-index based, instead of RGB based.
- Keep original bitmap and XOR mask separate, so that get_Handle
  returns original bitmap.
2005-04-13 15:18:02 +00:00
Daniel Remenak
4d7e99df93 Implemented VarIdiv. 2005-04-13 10:59:25 +00:00
Daniel Remenak
292b61f550 Return DISP_E_DIVBYZERO instead of crashing when asked to divide a
variant by zero.
2005-04-12 10:15:56 +00:00
Francois Gouget
6b10c324c5 Assorted spelling fixes. 2005-03-30 17:08:31 +00:00
Alex Villacís Lasso
7bfc29028a Initialize [orig|himetric][Width|Height] for PICTYPE_ICON case. 2005-03-30 10:21:30 +00:00
Alex Villacís Lasso
2612f61fff Fix failure to notice the use of a GIF palette index greater or equal
to 128 for transparency.
2005-03-29 18:57:15 +00:00
Marcus Meissner
41079866f7 Serialize NULL pointer interfaces correctly. 2005-03-29 13:06:44 +00:00
Marcus Meissner
4b5f3c61ad Fixed VT_BSTR|VT_BYREF marshalling.
Added VT_I4|VT_BYREF marshalling.
2005-03-29 11:29:11 +00:00
Marcus Meissner
89feaca290 Fixed ppvObject serializer (deref twice instead of once).
Actually pass back return value of remote call in type marshaller.
2005-03-28 10:00:49 +00:00
Mike Hearn
edcbd13665 Fix BSTR tracing in the typelib marshaller. 2005-03-27 18:20:10 +00:00
Marcus Meissner
c91df67f11 Format VT_UI1, VT_I1, VT_UI2, VT_I2 correctly. 2005-03-27 18:17:19 +00:00
Marcus Meissner
e6260a3625 Added IDispatch::GetIDsOfNames() special case serializing.
Handle VT_PTR / NULL marshalling correctly.
2005-03-27 17:51:59 +00:00
Mike Hearn
9b79651579 Fix PARAMFLAG_FOUT typo in the tmarshaller. 2005-03-25 16:38:37 +00:00
Jakob Eriksson
9ed61de9a2 Get rid of HeapAlloc casts. 2005-03-24 21:01:35 +00:00
Alex Villacís Lasso
2dd3288c43 After Float->string conversion via sprintfW(), VarDecFromR[4|8] is
forced to use US locale for string->Decimal conversion, to agree with
sprintfW().
2005-03-24 19:03:14 +00:00
Francois Gouget
93416cdaf7 Assorted spelling fixes. 2005-03-23 13:15:18 +00:00
Jacek Caban
7ff344e20f Fixed vartype test. 2005-03-18 14:02:12 +00:00
Alexandre Julliard
232760ded0 Authors: Mike Hearn <mh@codeweavers.com>, Robert Shearman <rob@codeweavers.com>
- Implement VT_BYREF | VT_BSTR marshalling.
- Add more integer types for marshaling and unmarshaling.
- Implement VT_BYREF | VT_BSTR unmarshaling.
- Don't allocate memory for TKIND_DISPATCH/TKIND_INTERFACE
  unmarshaling as it will be lost in the success case and interferes
  with the failure case.
2005-03-14 10:09:11 +00:00
Robert Shearman
ac23f2c810 Add outer unknown support for typelib marshaler. 2005-03-11 10:18:31 +00:00
Jacek Caban
cf8b29f7e0 More implementation of IRecordInfo. 2005-03-09 11:43:55 +00:00
Jacek Caban
0f9c43d8a5 - Implemented GetRecordInfoFromTypeInfo and GetRecordInfoFromGuid.
- Beginnig implementation of IRecordInfo.
2005-03-07 19:22:48 +00:00
Maxime Bellengé
901bdbf2d1 Implements OleLoadPicturePath. 2005-03-04 12:30:26 +00:00
Francois Gouget
fbb3343547 Assorted spelling fixes. 2005-03-02 13:53:50 +00:00
Jon Griffiths
eb5bf7dd38 Documentation spelling fixes. 2005-02-25 14:07:56 +00:00
Huw Davies
beea69c820 The typelib cache should take the typelib resource index into
account.
2005-02-22 19:30:16 +00:00
Jon Griffiths
743fb99a9f Use variant macros instead of accessing the union directly. 2005-02-22 14:54:01 +00:00
Vincent Béron
06d7cae4d7 Add a stub for OleLoadPicturePath(). 2005-02-21 18:36:06 +00:00
Mike Hearn
80380eaa32 Allow loading of builtin typelibs. 2005-02-21 18:34:41 +00:00
Alex Villacís Lasso
c2292eefb5 Implement OleFontImpl_QueryTextMetrics. 2005-02-18 12:51:23 +00:00
Alex Villacís Lasso
18bfe6a095 Change SUBLANG_DEFAULT to SUBLANG_NEUTRAL for LANG_SPANISH in all
resources, so that Spanish locales other than Spain also use Spanish
resources.
2005-02-16 21:10:59 +00:00
Marcelo Duarte
574c0edabb Update the resources for Portuguese. 2005-02-14 11:12:30 +00:00
Marcus Meissner
a34c23498f Check for overflows with ClrUsed. 2005-02-14 11:08:22 +00:00
Paul Vriens
19e86c7de3 Add WinXP to OaBuildVersion. 2005-02-08 12:56:50 +00:00
Mike Hearn
08dc15fa0a Return OLE automation build value as win2k by default. 2005-02-08 12:12:40 +00:00
Vincent Béron
dff207d3ce Remove message telling users to copy native stdole32.tlb over as we
now provide it.
Better trace in LoadTypeLib.
Change debug messages type to reflect we provide stdole32.tlb.
2005-01-31 11:34:10 +00:00
Rein Klazes
26771be4da SafeArrayDestroy() returns success when called with a NULL
pointer. Added to the test cases.
2005-01-31 11:31:50 +00:00
Mike Hearn
64eac75fe4 - Change some FIXMEs to ERRs to reflect the fact that nothing needs
fixing.
- Fix some memory leaks on error paths in _marshal_interface.
2005-01-27 11:11:32 +00:00
Mike Hearn
6c093f39a4 Fix a typo, propagate errors better from inside the typelib
marshaller.
2005-01-26 19:42:17 +00:00
Robert Shearman
ce5adcda15 - Move OLE automation interface registration to oleaut32.
- Add IRemUnknown to list of interfaces to register.
2005-01-25 19:03:30 +00:00
Alex Villacís Lasso
d0bdb3888b Initialize temporary variants before calling VariantChangeTypeEx. 2005-01-25 18:57:43 +00:00
Rémi Assailly
6063b542aa char -> const char fixes. 2005-01-24 11:29:44 +00:00
Alex Villacís Lasso
ed9a359402 When parsing an hex/oct integer value, copy value verbatim in VARIANT,
rather than a negated value. Add test case for this behavior.
2005-01-17 19:34:58 +00:00
James Hawkins
ba92d2924a - Use Interlocked* instead of ++/-- in AddRef/Release.
- Use only stored result of Interlocked* in AddRef/Release.
- Expand TRACEs to display the ref count.
2005-01-14 16:02:20 +00:00
Alexandre Julliard
53526959e9 Another warning fix. 2005-01-10 12:31:06 +00:00
Alexandre Julliard
dd8fccfe72 Avoid warnings. 2005-01-09 18:01:49 +00:00
Huw Davies
d070d8fb46 The value of a packed VARIANT can be up to 1L << 26 - 1. 2005-01-09 18:00:32 +00:00
Paul Vriens
202b340a51 - use Interlocked* functions in AddRef and Release.
- store the result of the Interlocked functions and use only this.
2005-01-09 17:29:21 +00:00
Eric Pouech
cf1d00bb08 Removed excessive statement (break after return or goto, not useful
break, not needed vars...)
2005-01-09 16:42:53 +00:00
Michael Stefaniuc
15a308a9d7 Do not check for non NULL pointer before HeapFree'ing it. It's
redundant.
2005-01-03 14:56:42 +00:00
Eric Pouech
89f5283432 Some missing const correctness fixes. 2005-01-03 14:50:12 +00:00
Huw Davies
273137cc2c Fix typelib generation of CARRAYs. 2004-12-27 17:19:26 +00:00
Michael Stefaniuc
5ad7d858e0 Do not check for non NULL pointer before HeapFree'ing it. It's
redundant.
2004-12-23 17:06:43 +00:00
Francois Gouget
6fb1a20020 Assorted spelling fixes. 2004-12-20 19:27:06 +00:00
Bill Medland
405abd5b06 Fully initialise the structure to prevent ill-defined behaviour. 2004-12-20 17:05:44 +00:00
Alexandre Julliard
ddd2486e98 Expand the COPYTEST macro to avoid trouble with 64-bit types. 2004-12-17 19:13:24 +00:00
Huw Davies
dcb25230e0 Fix comment to reflect reality and indeed the code. 2004-12-17 18:56:49 +00:00
Jon Griffiths
f82272c92f Remove unneeded headers to reduce unneeded rebuilds. 2004-12-16 14:35:55 +00:00
Dmitry Timoshkov
da10a46ca7 Add Russian translations. 2004-12-15 10:44:00 +00:00
Robert Shearman
67942791e2 Implement RPC_E_DISCONNECTED in proxies. 2004-12-14 11:44:11 +00:00
Eric Pouech
4056d7ef8c Fixed some errors in function prototypes. 2004-12-13 21:19:01 +00:00
Hans Leidekker
97b7e0dec7 Fix compilation with GCC 4. 2004-12-13 13:30:49 +00:00
Huw Davies
033276b687 Remove the remaining dependencies on internal structures from Invoke. 2004-12-09 11:36:27 +00:00
Huw Davies
3dc64fc541 GetTypeAttr should deep copy the typedesc. 2004-12-08 19:32:28 +00:00
Huw Davies
7a6c099921 Fix return value of GetVarIndexOfMemId. 2004-12-08 17:48:16 +00:00
Robert Shearman
cd0970eb24 Make the DECIMAL_SETZERO macro take a DECIMAL instead of a DECIMAL* as
in the Microsoft headers and fix up the only caller.
2004-12-08 13:59:52 +00:00
Huw Davies
23ded07e63 Remove Invoke's dependence on the internal TLBFuncDesc structure.
Fix memory leaks in some failure cases.
2004-12-07 16:59:40 +00:00
Huw Davies
367d16931e GetFuncIndexOfMemId should respect invkind and return
TYPE_E_ELEMENTNOTFOUND if the function cannot be found.
2004-12-07 14:18:29 +00:00
Huw Davies
81768fe150 Allocate the TYPEATTR rather than copying it.
For a dual interface the dispinterface's cfuncs should include the
inherited functions, cbSizeVft should just be the size of IDispatch's
vtbl and we should strip TYPEFLAG_FOLEAUTOMATION.
2004-12-02 19:58:07 +00:00
Eric Pouech
0a258964c2 Const correctness fixes. 2004-11-30 21:38:57 +00:00
Jon Griffiths
c50d8743fa Ensure DllCanUnloadNow is a truly void function, and give it a unique
name so it can be documented per-dll.
2004-11-30 17:40:51 +00:00
Alexandre Julliard
405568801e Removed a couple of no longer needed entries. 2004-11-19 18:28:05 +00:00
Walt Ogburn
e5013299e0 In OlePictureImpl_Load, always use DIB_RGB_COLORS because no indexed
palette has been defined.
2004-11-09 20:02:25 +00:00
William Poetra Yoga H
30c5be395e Use COLOR_MENUBAR (instead of COLOR_GRADIENTINACTIVECAPTION) as the
upper limit in GetSysColor() validation.
2004-11-08 20:24:50 +00:00
Mike Hearn
45eba51461 Support assigning font objects to other font objects. 2004-11-06 03:49:18 +00:00
Ge van Geldorp
b3f2c53155 Use only one .res file. 2004-10-27 00:47:53 +00:00
Alexandre Julliard
32457b4f5a Converted more of the (Un)RegisterTypeLib code to Unicode.
Factored out some common routines.
2004-10-22 22:09:09 +00:00
Mike McCormack
56fc9bfade Use Unicode functions in RegisterTypeLib. 2004-10-22 20:29:34 +00:00
Walt Ogburn
f61786d444 VarParseNumFromStr: Keep zeros after decimal point, correctly keep
track of trailing zeros in a decimal number.
VarNumFromParseNum: Don't error on decimal expressions for zero.
2004-10-21 19:55:37 +00:00
Walt Ogburn
84c1f667ae Keep "trailing" zeros on whole number part of a decimal.
Add an example of this to tests.
2004-10-19 21:08:40 +00:00
Walt Ogburn
f5c25e8067 Test that SafeArrayDestroyData keeps the pointer if FADF_STATIC is
set, nulls it otherwise.
2004-10-19 21:08:18 +00:00
Walt Ogburn
bb313c9dbe SafeArrayDestroyData - keep pointer, don't destroy data if FADF_STATIC
is set.
2004-10-19 21:08:02 +00:00
Vincent Béron
4eeae1adb3 Fix some types problems. 2004-10-18 22:39:21 +00:00
Walt Ogburn
ea1b58b560 Test zero exponents with and without signs. 2004-10-18 22:35:18 +00:00
Walt Ogburn
d5cf83317e Allow exponents of zero (like "1.000E0") to parse
correctly. Previously, they caused DISP_E_TYPEMISMATCH.
2004-10-11 20:53:29 +00:00
Francois Gouget
486d020c1b Don't define COBJMACROS in objbase.h.
Update the Wine sources accordingly.
2004-10-07 03:06:48 +00:00
Francois Gouget
0f313d0d5d Fix the VarI4FromI2 API documentation. 2004-10-07 02:59:45 +00:00
Francois Gouget
67aa858a31 Assorted spelling fixes. 2004-10-05 18:15:29 +00:00
Huw Davies
ddae24c50b Implement CreateDispTypeInfo. 2004-10-05 18:07:49 +00:00
Marcus Meissner
5539e288a6 Function return types cannot be const. 2004-09-27 20:33:27 +00:00
Joris Huizer
34cffce6f9 Ref count increment/decrement cleanup. 2004-09-24 01:16:53 +00:00
Huw Davies
76c5590bfb Don't trash the dst variant if we can't do the type conversion.
Add a test for this.
2004-09-22 19:12:18 +00:00
Alex Villacís Lasso
2d02afbc09 Partial implementation for OLEPictureImpl_Save. 2004-09-22 04:04:03 +00:00
Hans Leidekker
719a789792 Fix signed/unsigned comparison warnings. 2004-09-22 02:46:38 +00:00