oleaut32 [10/10]: Add a proxy for ocidl; fix bug 4875

Dan Hipschman dsh at linux.ucla.edu
Mon Oct 29 21:24:57 CDT 2007


This adds a proxy for ocidl.idl and fixes bug 4875.  The app still crashes
later (oh well), but it does get much farther with this.  The UI comes up.
I didn't play with it too much.  It crashes when you try to close the app.
It's obviously progress.  Hopefully this series will fix a bunch of other
random bugs as well.

---
 .gitignore                       |    2 ++
 dlls/oleaut32/Makefile.in        |    1 +
 dlls/oleaut32/oleaut32_ocidl.idl |   20 ++++++++++++++++++++
 dlls/oleaut32/usrmarshal.c       |    2 ++
 4 files changed, 25 insertions(+), 0 deletions(-)
 create mode 100644 dlls/oleaut32/oleaut32_ocidl.idl

diff --git a/.gitignore b/.gitignore
index 592c180..ede1882 100644
--- a/.gitignore
+++ b/.gitignore
@@ -342,6 +342,8 @@ dlls/oleaut32/oleaut32_oaidl.h
 dlls/oleaut32/oleaut32_oaidl_p.c
 dlls/oleaut32/oleaut32_objidl.h
 dlls/oleaut32/oleaut32_objidl_p.c
+dlls/oleaut32/oleaut32_ocidl.h
+dlls/oleaut32/oleaut32_ocidl_p.c
 dlls/oleaut32/oleaut32_oleidl.h
 dlls/oleaut32/oleaut32_oleidl_p.c
 dlls/oleaut32/oleaut32_unknwn.h
diff --git a/dlls/oleaut32/Makefile.in b/dlls/oleaut32/Makefile.in
index a27496f..154a8d0 100644
--- a/dlls/oleaut32/Makefile.in
+++ b/dlls/oleaut32/Makefile.in
@@ -42,6 +42,7 @@ RC_SRCS = oleaut32.rc
 IDL_P_SRCS = \
 	oleaut32_oaidl.idl \
 	oleaut32_objidl.idl \
+	oleaut32_ocidl.idl \
 	oleaut32_oleidl.idl \
 	oleaut32_unknwn.idl
 
diff --git a/dlls/oleaut32/oleaut32_ocidl.idl b/dlls/oleaut32/oleaut32_ocidl.idl
new file mode 100644
index 0000000..1c8f1b3
--- /dev/null
+++ b/dlls/oleaut32/oleaut32_ocidl.idl
@@ -0,0 +1,20 @@
+/*
+ * Copyright 2007 Google (Dan Hipschman)
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+cpp_quote("#include <winuser.h>")
+#include "ocidl.idl"
diff --git a/dlls/oleaut32/usrmarshal.c b/dlls/oleaut32/usrmarshal.c
index a77c671..9741b5d 100644
--- a/dlls/oleaut32/usrmarshal.c
+++ b/dlls/oleaut32/usrmarshal.c
@@ -53,12 +53,14 @@ CSTDSTUBBUFFERRELEASE(&PSFactoryBuffer)
 
 extern const ExtendedProxyFileInfo oleaut32_oaidl_ProxyFileInfo;
 extern const ExtendedProxyFileInfo oleaut32_objidl_ProxyFileInfo;
+extern const ExtendedProxyFileInfo oleaut32_ocidl_ProxyFileInfo;
 extern const ExtendedProxyFileInfo oleaut32_oleidl_ProxyFileInfo;
 extern const ExtendedProxyFileInfo oleaut32_unknwn_ProxyFileInfo;
 
 static const ProxyFileInfo *OLEAUT32_ProxyFileList[] = {
   &oleaut32_oaidl_ProxyFileInfo,
   &oleaut32_objidl_ProxyFileInfo,
+  &oleaut32_ocidl_ProxyFileInfo,
   &oleaut32_oleidl_ProxyFileInfo,
   &oleaut32_unknwn_ProxyFileInfo,
   NULL



More information about the wine-patches mailing list