Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
c5feb317
Commit
c5feb317
authored
Jul 24, 2005
by
Marcus Meissner
Committed by
Alexandre Julliard
Jul 24, 2005
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Implemented IsValidInterface16, CoMemAlloc.
Added debug to HGLOBALLockBytes16_QueryInterface.
parent
ca260761
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
47 additions
and
4 deletions
+47
-4
compobj.spec
dlls/ole32/compobj.spec
+2
-2
memlockbytes16.c
dlls/ole32/memlockbytes16.c
+3
-1
ole16.c
dlls/ole32/ole16.c
+15
-0
ole2_16.c
dlls/ole32/ole2_16.c
+27
-1
No files found.
dlls/ole32/compobj.spec
View file @
c5feb317
...
@@ -20,7 +20,7 @@
...
@@ -20,7 +20,7 @@
20 pascal CLSIDFromString(str ptr) CLSIDFromString16
20 pascal CLSIDFromString(str ptr) CLSIDFromString16
21 stub ISVALIDPTRIN
21 stub ISVALIDPTRIN
22 stub ISVALIDPTROUT
22 stub ISVALIDPTROUT
23
stub ISVALIDINTERFACE
23
pascal IsValidInterface(segptr) IsValidInterface16
24 stub ISVALIDIID
24 stub ISVALIDIID
25 stub RESULTFROMSCODE
25 stub RESULTFROMSCODE
26 stub GETSCODE
26 stub GETSCODE
...
@@ -147,7 +147,7 @@
...
@@ -147,7 +147,7 @@
148 stub MKVDEFAULTHASHKEY
148 stub MKVDEFAULTHASHKEY
149 stub DELETE16
149 stub DELETE16
150 stub COMEMCTXOF
150 stub COMEMCTXOF
151
stub COMEMALLOC
151
pascal CoMemAlloc(long long long)
152 stub COMEMFREE
152 stub COMEMFREE
153 stub SHRREALLOC
153 stub SHRREALLOC
154 stub ___EXPORTEDSTUB
154 stub ___EXPORTEDSTUB
...
...
dlls/ole32/memlockbytes16.c
View file @
c5feb317
...
@@ -217,8 +217,10 @@ HRESULT HGLOBALLockBytesImpl16_QueryInterface(
...
@@ -217,8 +217,10 @@ HRESULT HGLOBALLockBytesImpl16_QueryInterface(
/*
/*
* Check that we obtained an interface.
* Check that we obtained an interface.
*/
*/
if
((
*
ppvObject
)
==
0
)
if
((
*
ppvObject
)
==
0
)
{
FIXME
(
"Unknown IID %s
\n
"
,
debugstr_guid
(
riid
));
return
E_NOINTERFACE
;
return
E_NOINTERFACE
;
}
/*
/*
* Query Interface always increases the reference count by one when it is
* Query Interface always increases the reference count by one when it is
...
...
dlls/ole32/ole16.c
View file @
c5feb317
...
@@ -506,3 +506,18 @@ BOOL WINAPI COMPOBJ_DllEntryPoint(DWORD Reason, HINSTANCE16 hInst, WORD ds, WORD
...
@@ -506,3 +506,18 @@ BOOL WINAPI COMPOBJ_DllEntryPoint(DWORD Reason, HINSTANCE16 hInst, WORD ds, WORD
TRACE
(
"(%08lx, %04x, %04x, %04x, %08lx, %04x)
\n
"
,
Reason
,
hInst
,
ds
,
HeapSize
,
res1
,
res2
);
TRACE
(
"(%08lx, %04x, %04x, %04x, %08lx, %04x)
\n
"
,
Reason
,
hInst
,
ds
,
HeapSize
,
res1
,
res2
);
return
TRUE
;
return
TRUE
;
}
}
/***********************************************************************
* CoMemAlloc [COMPOBJ.151]
*/
SEGPTR
WINAPI
CoMemAlloc
(
DWORD
size
,
DWORD
dwMemContext
,
DWORD
x
)
{
HRESULT
hres
;
SEGPTR
segptr
;
/* FIXME: check context handling */
TRACE
(
"(%ld, 0x%08lx, 0x%08lx)
\n
"
,
size
,
dwMemContext
,
x
);
hres
=
_xmalloc16
(
size
,
&
segptr
);
if
(
hres
!=
S_OK
)
return
(
SEGPTR
)
0
;
return
segptr
;
}
dlls/ole32/ole2_16.c
View file @
c5feb317
...
@@ -163,6 +163,32 @@ HRESULT WINAPI OleSetMenuDescriptor16(
...
@@ -163,6 +163,32 @@ HRESULT WINAPI OleSetMenuDescriptor16(
LPOLEINPLACEFRAME
lpFrame
,
LPOLEINPLACEFRAME
lpFrame
,
LPOLEINPLACEACTIVEOBJECT
lpActiveObject
)
LPOLEINPLACEACTIVEOBJECT
lpActiveObject
)
{
{
FIXME
(
"(%
lx
, %x, %x, %p, %p), stub!
\n
"
,
hOleMenu
,
hwndFrame
,
hwndActiveObject
,
lpFrame
,
lpActiveObject
);
FIXME
(
"(%
p
, %x, %x, %p, %p), stub!
\n
"
,
hOleMenu
,
hwndFrame
,
hwndActiveObject
,
lpFrame
,
lpActiveObject
);
return
E_NOTIMPL
;
return
E_NOTIMPL
;
}
}
/******************************************************************************
* IsValidInterface [COMPOBJ.23]
*
* Determines whether a pointer is a valid interface.
*
* PARAMS
* punk [I] Interface to be tested.
*
* RETURNS
* TRUE, if the passed pointer is a valid interface, or FALSE otherwise.
*/
BOOL
WINAPI
IsValidInterface16
(
SEGPTR
punk
)
{
DWORD
**
ptr
;
if
(
IsBadReadPtr16
(
punk
,
4
))
return
FALSE
;
ptr
=
MapSL
(
punk
);
if
(
IsBadReadPtr16
((
SEGPTR
)
ptr
[
0
],
4
))
/* check vtable ptr */
return
FALSE
;
ptr
=
MapSL
((
SEGPTR
)
ptr
[
0
]);
/* ptr to first method */
if
(
IsBadReadPtr16
((
SEGPTR
)
ptr
[
0
],
2
))
return
FALSE
;
return
TRUE
;
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment