Re: advapi32: Implement GetSecurityInfo.
Dan Hipschman [EMAIL PROTECTED] wrote: +#include assert.h ... @@ -2718,8 +2719,38 @@ DWORD WINAPI GetSecurityInfo( PSECURITY_DESCRIPTOR *ppSecurityDescriptor ) { - FIXME(stub!\n); - return ERROR_BAD_PROVIDER; +SECURITY_DESCRIPTOR *sd; +NTSTATUS status; +ULONG n1, n2; + +status = NtQuerySecurityObject(hObject, SecurityInfo, NULL, 0, n1); +assert(status != STATUS_SUCCESS); +if (status != STATUS_BUFFER_TOO_SMALL) +return RtlNtStatusToDosError(status); assert() (or rather ok(0)) would be appropriate in the test case, but not in the implementation IMO. -- Dmitry.
Re: [dplayx 01/12] Tests for CreateGroup
Ismael Barros wrote: Tests for CreateGroup Fixed the implementation of CreateGroup and CreateGroupInGroup so that it doesn't segfault when the service provider is not initialized --- dlls/dplayx/dplay.c| 10 ++ dlls/dplayx/tests/dplayx.c | 340 2 files changed, 350 insertions(+), 0 deletions(-) Hi Ismael, On what Windows version are you running your tests for verification? Is there anything particular you are doing to speed up the tests on your box? test.winehq.org already shows timeouts for all boxes that are running W2K or higher. This new patch serie will even add more tests but I'm afaid we will not see any output from it on the mentioned website. -- Cheers, Paul.
Re: [NJS#80583] Re: ntdll: import dll from dir of referring dll if not found instandard locations
Hongbo Ni [EMAIL PROTECTED] wrote: I have posted a another patch regarding to windows hook into another process. http://www.winehq.org/pipermail/wine-patches/2008-August/059069.html Basically it change LoadlibraryW to LoadlibraryExW with Alt-path. Could you please let me know what your comment and guide me in coding such test case? Basically the test need to inject 2 dlls into another process (say Notepad) using SetWindowsHookEx(), and have some way to know if the dlls are loaded by the target process. I can code the dll so it will send a message back to my test window to inform me that they are loaded into Notepad. For those 2 DLLS, I have already made it on windows, How and where can I add to wine test? Do I need submit the source and make file of those 2 dlls for maketest? I am not sure how maketest create window DLL for auto-testing. Due to some problems there is no way to create an ELF wrapped hook dll using Wine tools. I'd suggest to create maximally stripped down test which works under Windows, and post an url to it with your fix. -- Dmitry.
Re: d3dx9: Implementation of D3DXMatrixDecompose and tests
Hi, 1. The order of +/*The components of the translation transformation vector are straigth in the fourth column of the transformation matrix*/ +(*pouttranslation).x=(*pM).m[3][0]; +(*pouttranslation).y=(*pM).m[3][1]; +(*pouttranslation).z=(*pM).m[3][2]; + +/*Let's calculate rotation now*/ +/*If some of the scale factors is zero, it is impossible to obtain the rotation*/ +if (((*poutscale).x==0)||((*poutscale).y==0)||((*poutscale).z==0)) +{ +return D3DERR_INVALIDCALL; +} should be reversed, as we want to return D3DERR_INVALIDCALL as soon as possible (if needed). Also, the whole code can be simplified to: +/*If some of the scale factors is zero, it is impossible to obtain the rotation*/ +if ((poutscale-x==0)||(poutscale-y==0)||(poutscale-z==0)) +return D3DERR_INVALIDCALL; + +/*The components of the translation transformation vector are straigth in the fourth column of the transformation matrix*/ +pouttranslation-x=pM-m[3][0]; +pouttranslation-y=pM-m[3][1]; +pouttranslation-z=pM-m[3][2]; + +/*Let's calculate rotation now*/ (Note the removed {} which saves two lines of code) 2. I haven't tested this, but if you haven't done so yet, you should check the function's behavior if one of the pointers is NULL. If it segfaults with native d3dx9_36, your code is okay, otherwise you'll need an additional check right at the beginning. 3. Also, there were some spelling mistakes: +/*The scale factors are the modules of the three vectors __of that__ lie in __the__ column of the 3x3 submatrix*/ +/*The scale factors are the modules of the three vectors __which__ lie in __each__ column of the 3x3 submatrix*/ +/*If some of the scale factors is zero, it is impossible to obtain the rotation*/ +/*If __any scale factor__ is zero, it is impossible to obtain the rotation*/ +/*Then we go for the biggest component in order to __minimise__ division error as commonly explained in the __literacy__. + We just calculate one component from the diagonal to avoid sign loss of the square root. The first sign is not important + because the rotations (x,y,z,w) and (-x,-y,-z,-w) are equivalent. But if we __calc ulated__ the other two components we would have + to choose and could be wrong.*/ +/*Then we go for the biggest component in order to __minimize__ division error as commonly explained in the __literature__. + We just calculate one component from the diagonal to avoid sign loss of the square root. The first sign is not important + because the rotations (x,y,z,w) and (-x,-y,-z,-w) are equivalent. But if we __calculated__ the other two components we would have + to choose and could be wrong.*/ 4. Regarding the test, you should perhaps explain in a one-line comment what's special about the tested numbers in comparison to the others (other sign? invalid numbers? etc.) 5. It's not bad, but for the future you may want to split the implementation and the test in two patches so that you have a greater chance to get one of them in. Best regards, Tony Unbegrenzter Speicher, Top-Spamschutz, 120 SMS und eigene E-MailDomain inkl. http://office.freenet.de/dienste/emailoffice/produktuebersicht/power/mail/index.html
Re: msxml3: Add ISAXContentHandler_endPrefix event (1/7)
Piotr Caban [EMAIL PROTECTED] writes: +static HRESULT namespacePush(saxlocator *locator, int ns) +{ +if(locator-nsStackLast+1locator-nsStackSize) +{ +locator-nsStackSize += STACKALLOCATIONSIZE; +locator-nsStack = HeapReAlloc(GetProcessHeap(), 0, +locator-nsStack, locator-nsStackSize); +if(!locator-nsStack) return E_FAIL; You should preserve the existing stack on failure. Also the growth should be by a multiple of the current size instead of a constant. -- Alexandre Julliard [EMAIL PROTECTED]
Re: [2/2] user32:focus.c Remove unneeded palette messages.
Dmitry Timoshkov wrote: Anatoly Lyutin [EMAIL PROTECTED] wrote: I run test-cases on 98 and XP and I can not see where this messages have been posted in tests. In Wine this messages have not processing. Does anybody something know about this? Try to run the tests in a paletted (256 color) mode. Dmitry, thank you for your feedback. I have added this messages in the SetActiveWindow msg sequences tests. -- Best regards Anatoly Lyutin.
Re: [PATCH] oleaut32: Fix some corner cases in VarBstrCmp.
Lei Zhang [EMAIL PROTECTED] writes: diff --git a/dlls/oleaut32/vartype.c b/dlls/oleaut32/vartype.c index daeac85..713ebae 100644 --- a/dlls/oleaut32/vartype.c +++ b/dlls/oleaut32/vartype.c @@ -6942,7 +6942,24 @@ HRESULT WINAPI VarBstrCmp(BSTR pbstrLeft, BSTR pbstrRight, LCID lcid, DWORD dwFl if (!pbstrLeft || !*pbstrLeft) { if (!pbstrRight || !*pbstrRight) -return VARCMP_EQ; + { +UINT ll; +UINT lr; + +if (lcid) +{ + ll = SysStringLen(pbstrLeft); + lr = SysStringLen(pbstrRight); +} +else +{ + ll = SysStringByteLen(pbstrLeft); + lr = SysStringByteLen(pbstrRight); +} +if (ll == lr) + return VARCMP_EQ; +return ll lr ? VARCMP_LT : VARCMP_GT; + } That's ugly, you shouldn't need such special handling here, you should simply fall through to the normal comparisons which should give the correct results. -- Alexandre Julliard [EMAIL PROTECTED]
Re: [1/2] user32: Add a test for ToUnicode (try 5)
Paul Vriens wrote: Just some things that caught my attention: Could you trim the length for some of the lines somewhat? I also don't think you need all those comments in the first call to ToUnicode. There is a C++ comment in the patch, should be avoided. And as a last one, is it possible to use names instead of magic constants? I just resent my patches, hoping everything is ok now.
Re: Patch checking robot coming
I've written some code for the chroot, though it has proven to be harder than I taught it would, especially because of all the development tools and libraries that need to be copied into the chroot. Right now it will only work on Gentoo, other distributions will require some fine-tuning of paths, especially the toolchain. Dan, if you tell me which distro you use, I'll try to get it working there as well. To use it, you first need a second user in the system (not the one you're using!) that has read-access to files you create with default permissions (but no write access). Specify that user in the file config and run patchwatcher.sh initialize_chroot. If everything goes well you will be able to get a shell inside the chroot with patchwatcher.sh chroot-shell or patchwatcher.sh chroot-shell-owner after running some commands displayed as root. After having a working chroot, use the initialize_tree command to setup the wine source (it's inside the chroot), and the run option to start continuous building. patchwatcher-chroot1.patch Description: Binary data
Re: DIB engine status
On Fri, Aug 01, 2008 at 06:23:43PM +0400, Сергей Новосёлов wrote: We'd like to continue develop your version. When are you going to remain this project? Great! Please send me patches and I'll apply them. I'll probably merge with WineHQ on every WineHQ release. I'm not planning on doing any work on it for a while, but will probably return to it at some point in the future. Huw. -- Huw Davies [EMAIL PROTECTED]
Re: [dplayx 01/12] Tests for CreateGroup
On 8/5/08, Paul Vriens [EMAIL PROTECTED] wrote: Ismael Barros wrote: Tests for CreateGroup Fixed the implementation of CreateGroup and CreateGroupInGroup so that it doesn't segfault when the service provider is not initialized --- dlls/dplayx/dplay.c| 10 ++ dlls/dplayx/tests/dplayx.c | 340 2 files changed, 350 insertions(+), 0 deletions(-) Hi Ismael, On what Windows version are you running your tests for verification? Is there anything particular you are doing to speed up the tests on your box? I'm running them in XP SP2, in vmware, and I don't have ane way to speed them up, dplay is quite slow setting up connections. test.winehq.org already shows timeouts for all boxes that are running W2K or higher. This new patch serie will even add more tests but I'm afaid we will not see any output from it on the mentioned website. All the tests work on my machine, I'll have to check how to stop them failing in Win98 and NT4, their behavior seems completely different... Why do timeouts appear? Tests take too long? Too long without output to stdout? Is there any way to solve it without rewriting everything? -- Cheers, Paul. -- ...yet even then, we ran like the wind, whilst our laughter echoed, under cerulean skies...
Re: [WineHQ] [4/4] news: Remove the 'Weekly Newsletters' box from the home page.
They should be fine. I will get them in sometime today, and clean them up if that is even needed. Thanks for the work. Francois Gouget wrote: On Mon, 4 Aug 2008, Jeremy Newman wrote: I have no intention of removing the WWN box. Removing it will leave a large gaping hole on that right sidebar. Are the other patches ok?
Vacation
Folks, I'm leaving on vacation, so there won't be any commits for a while. Of course thanks to git that shouldn't prevent you from filling my mailbox with patches... I'll be back on the 18th, and release 1.1.3 will thus be on the 22nd. -- Alexandre Julliard [EMAIL PROTECTED]
Re: d3dx9: Implementation of D3DXGetDeclLength
2008/8/5 Luis Busquets [EMAIL PROTECTED]: +static const D3DVERTEXELEMENT9 lc={0xFF,0,D3DDECLTYPE_UNUSED,0,0,0}; What do you use this for? +while ((pdecl+i)-Stream!=0xFF) +{ +i++; You might as well increment pdecl itself. Also keep in mind that Alexandre won't be back before the 18th, so no patches will be applied before that either.
Re: d3dx9: Implementation of D3DXMatrixDecompose 2/2
2008/8/5 David Adam [EMAIL PROTECTED]: Hi, some remarks +if (((*poutscale).x==0)||((*poutscale).y==0)||((*poutscale).z==0)) should be +if ((poutscale-x==0)||(poutscale-y==0)||(poutscale-z==0)) To add to that, you really should test your error paths in your test case. Also: +TRACE(\n); That's not a very informative TRACE.
Re: [PATCH] oleaut32: Fix some corner cases in VarBstrCmp.
On Tue, Aug 5, 2008 at 3:15 AM, Alexandre Julliard [EMAIL PROTECTED] wrote: That's ugly, you shouldn't need such special handling here, you should simply fall through to the normal comparisons which should give the correct results. Falling through didn't work. CompareStringW does not like NULL inputs. It still needs a little bit of special handling. Will resubmit patch.