https://git.reactos.org/?p=reactos.git;a=commitdiff;h=9c3c0d123bf2306b80826…
commit 9c3c0d123bf2306b808262fba1d3a224be9fac96
Author: Pierre Schweitzer <pierre(a)reactos.org>
AuthorDate: Sun Jun 2 10:48:35 2019 +0200
Commit: Pierre Schweitzer <pierre(a)reactos.org>
CommitDate: Sun Jun 2 10:48:35 2019 +0200
[NTOSKRNL] In case IopMountVolume call is a success, return its VPB
This fixes an extra (erroneous) reference being set on the VPB.
Based on a patch by Vadim Galyant
CORE-16080
---
ntoskrnl/io/iomgr/volume.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/ntoskrnl/io/iomgr/volume.c b/ntoskrnl/io/iomgr/volume.c
index 6c2e3191e9a..1d1e31e5c0d 100644
--- a/ntoskrnl/io/iomgr/volume.c
+++ b/ntoskrnl/io/iomgr/volume.c
@@ -123,6 +123,14 @@ IopCheckVpbMounted(IN POPEN_PACKET OpenPacket,
*Status = STATUS_WRONG_VOLUME;
return NULL;
}
+ /*
+ * In case IopMountVolume returns a valid VPB
+ * Then, the volume is mounted, return it
+ */
+ else if (Vpb != NULL)
+ {
+ return Vpb;
+ }
/* Re-acquire the lock */
IoAcquireVpbSpinLock(&OldIrql);
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=f8a4d31da489660d48975…
commit f8a4d31da489660d48975a685da49fb1f4748685
Author: Pierre Schweitzer <pierre(a)reactos.org>
AuthorDate: Sun Jun 2 09:50:05 2019 +0200
Commit: Pierre Schweitzer <pierre(a)reactos.org>
CommitDate: Sun Jun 2 10:00:17 2019 +0200
[NTOSKRNL] On process primary token change, dereference device map
---
ntoskrnl/ps/security.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/ntoskrnl/ps/security.c b/ntoskrnl/ps/security.c
index e245dde563f..619ff56d247 100644
--- a/ntoskrnl/ps/security.c
+++ b/ntoskrnl/ps/security.c
@@ -325,6 +325,14 @@ PspSetPrimaryToken(IN PEPROCESS Process,
STANDARD_RIGHTS_ALL |
PROCESS_SET_QUOTA);
}
+
+ /*
+ * In case LUID device maps are enable, we may not be using
+ * system device map for this process, but a logon LUID based
+ * device map. Because we change primary token, this usage is
+ * no longer valid, so dereference the process device map
+ */
+ if (ObIsLUIDDeviceMapsEnabled()) ObDereferenceDeviceMap(Process);
}
/* Dereference the token */
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=bc3eed68ca1f4c5aa66ce…
commit bc3eed68ca1f4c5aa66ceaca4fc8ae405714699e
Author: Joachim Henze <Joachim.Henze(a)reactos.org>
AuthorDate: Sat Jun 1 22:53:16 2019 +0200
Commit: Joachim Henze <Joachim.Henze(a)reactos.org>
CommitDate: Sat Jun 1 22:53:16 2019 +0200
[MSHTML] Fake Success in HTMLDocument_put_bgColor()
This avoids at startup of Instant Messenger "QIP 2005 8095"
a message-box with "OLE Error 8004001".
The issue is a subtask of CORE-11537
Many Thanks to the patches author
Andreas Maier <staubim(a)quantentunnel.de>
JIRA-nick: andy-123
Note you still need to install Gecko 2.40 and Samba 1.3 from rapps for QIP.
---
dll/win32/mshtml/htmldoc.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/dll/win32/mshtml/htmldoc.c b/dll/win32/mshtml/htmldoc.c
index b7eea81a469..5142e194c6d 100644
--- a/dll/win32/mshtml/htmldoc.c
+++ b/dll/win32/mshtml/htmldoc.c
@@ -658,7 +658,11 @@ static HRESULT WINAPI HTMLDocument_put_bgColor(IHTMLDocument2 *iface, VARIANT v)
{
HTMLDocument *This = impl_from_IHTMLDocument2(iface);
FIXME("(%p)->(%s)\n", This, debugstr_variant(&v));
+#ifdef __REACTOS__
+ return S_OK;
+#else
return E_NOTIMPL;
+#endif
}
static HRESULT WINAPI HTMLDocument_get_bgColor(IHTMLDocument2 *iface, VARIANT *p)