Re: html browser for wine (khtml)

2003-01-10 Thread Mike Hearn
 Well, last time the talking here was that due to QT license, KHTML couldn't be 
 used, and now with the Safari you don't need any QT (you can use other GUI 
 kits around)...

Actually Ender was de-Qting KHTML at some point, are you still around Ender?
I haven't seen the code but I expect you can forget about Safari - iirc it's
been integrated with Quartz which is of course a proprietary Apple system only.
Seeing as they were ranting about speed, I doubt they'll have imposed the overhead
of a graphics layer abstraction system.

About duplication - I think it's probably most likely that the best course would be
to copy the KHTML source into the Wine tree, because I'd expect modifications would
be needed in order to support all the IEisms that will crop up in regular usage of
the WebBrowser control. KHTML out of the box won't, and never will support ActiveX,
IE specific markup or any of the other proprietary stuff MS threw in for fun during
the browser wars. The KDE team would rightly reject such patches from being integrated
into upstream.

I don't know how much progress Ender made, it might be worth emailing him to find out.

thanks -mike
-- 
Mike Hearn [EMAIL PROTECTED]
QinetiQ - Malvern Technology Center





Re: Re: html browser for wine (khtml)

2003-01-10 Thread fenix
Hi,



Message d'origine
Sujet: Re: html browser for wine (khtml)
De: Mike Hearn [EMAIL PROTECTED]
A: [EMAIL PROTECTED]
Copie à: [EMAIL PROTECTED], [EMAIL PROTECTED]
Date: 10 Jan 2003 09:14:54 +

snip

About duplication - I think it's probably most likely that the best course would be
to copy the KHTML source into the Wine tree, because I'd expect modifications would
be needed in order to support all the IEisms that will crop up in regular usage of
the WebBrowser control. KHTML out of the box won't, and never will support ActiveX,
IE specific markup or any of the other proprietary stuff MS threw in for fun during
the browser wars. The KDE team would rightly reject such patches from being integrated
into upstream.

 As i know, khtml support most of the IE-isms (for compatibility, try to actve IE 
support in konqueror).
 And for ActiveX, it must be simply supported by a khtml plugin (as crossover plugin 
do)


thanks -mike
-- 
Mike Hearn [EMAIL PROTECTED]
QinetiQ - Malvern Technology Center

 Raphael





Re: Re: html browser for wine (khtml)

2003-01-10 Thread Mike Hearn
  As i know, khtml support most of the IE-isms (for compatibility, try to actve IE 
support in konqueror).
  And for ActiveX, it must be simply supported by a khtml plugin (as crossover plugin 
do)

If only it were that simple. Rather ironically the thing that led to me Wine in the 
first place was that
I needed to use features of an ActiveX control that were only available under IE. 
Although it would also (in theory)
work in Mozilla or Konq as well, in practice they didn't support rich enough plugin 
interfaces for host scripting
merge (where the plugin hooks into the browsers script interpreter and partially 
merges them together). Hence I now
sometimes need to use IE under Linux.

There are lots of IEisms that I doubt Konq replicates. ActiveX controls are sometimes 
a lot more complex than just
displaying some controls on a page, they can actually integrate with IE to quite an 
impressive extent.

For instance:

- DirectX filters
- DHTML Behaviours
- ActiveScript (needs a vbscript interpreter as well as a JS interpreter)
- ActiveX data binding
- .NET integration

and so on. I expect upstream khtml could get 80% of the way there, but the remaining 
20% would require tight
integration with Wine and some extensive code changes.

-- 
Mike Hearn [EMAIL PROTECTED]
QinetiQ - Malvern Technology Center





Re: Wine, Mozilla IE ?

2003-01-10 Thread Mike Hearn
http://winehq.org/news/?view=147#IWebBrowser%20Status

Some of the discussion is summed up there.

Basically Gecko is huge, roughly as big if not bigger than Wine itself.
KHTML is understandable by one person. It's also more easily adapted to
IEisms.

Alexandre, what's the reasoning behind the no C++ rule?

On Fri, 2003-01-10 at 10:26, Juan Rey Saura wrote:
 Hi !
 
 I've read in the list there is a project about compiling Mozilla under 
 Wine,  I think it would be great.
 
 Several parts of wine need  an IWebBrowser implemtation; CHM support, 
 some applications...
 One implementation based on the khtml is in the works, but Mozilla does 
 implement it yet ( see http://www.iol.ie/~locka/mozilla/mozilla.htm ).
 
 Could Mozilla, under Wine or maybe native version, be used as a 
 replacement for the IE IWebBrowser implementation?
 
-- 
Mike Hearn [EMAIL PROTECTED]
QinetiQ - Malvern Technology Center





Re: Re: Re: html browser for wine (khtml)

2003-01-10 Thread fenix
Hi again,

Message d'origine
Sujet: Re: Re: html browser for wine (khtml)
De: Mike Hearn [EMAIL PROTECTED]
A: [EMAIL PROTECTED]
Copie à: [EMAIL PROTECTED], [EMAIL PROTECTED],
Date: 10 Jan 2003 09:47:41 +

  As i know, khtml support most of the IE-isms (for compatibility, try to actve IE 
support in konqueror).
  And for ActiveX, it must be simply supported by a khtml plugin (as crossover 
plugin do)

If only it were that simple. Rather ironically the thing that led to me Wine in the 
first place was that
I needed to use features of an ActiveX control that were only available under IE. 

Same problem here :)

 Although it would also (in theory)
work in Mozilla or Konq as well, in practice they didn't support rich enough plugin 
interfaces for host scripting
merge (where the plugin hooks into the browsers script interpreter and partially 
merges them together). Hence I now
sometimes need to use IE under Linux.

http://webcvs.kde.org/cgi-bin/cvsweb.cgi/kdelibs/kparts/browserextension.h?rev=1.94content-type=text/x-cvsweb-markup

- LiveConnectExtension is for scripting Interface (kjs and JAVA support use it so it 
will be sufficient for ActiveX/ActiveScript)
(I have played with it a long time ago for a mini-basic scripting support)

There are lots of IEisms that I doubt Konq replicates. ActiveX controls are sometimes 
a lot more complex than just
displaying some controls on a page, they can actually integrate with IE to quite an 
impressive extent.

maybe but all ActiveX i have seen are only embeded plugins or code who:
- sometimes modify html rendering (ex: embeding directx panel, ...)
- do some windows calls

And i don't see what you cannot do with konq plugins.


For instance:

- DirectX filters

hmm, problem here, DirectShow and DirectMedia are not supported by wine yet ( it's at 
end on my todo list :) ).

- DHTML Behaviours

if you talk by unsupported specific IE-DHTML behaviors by kthml ... we have to see if 
we can easily extend khtml parser without forking kthml code (i haven't see how parser 
interact with plugins)
Maybe asking khtml people if its possible integrating more IE-isms compat in kthml ...

- ActiveScript (needs a vbscript interpreter as well as a JS interpreter)
- ActiveX data binding
- .NET integration

.NET integration is difficult because it can use SOAP and somes XMLs stupid things :(

and so on. I expect upstream khtml could get 80% of the way there, but the remaining 
20% would require tight
integration with Wine and some extensive code changes.



-- 
Mike Hearn [EMAIL PROTECTED]
QinetiQ - Malvern Technology Center


 Raphael





Re: Wine, Mozilla IE ?

2003-01-10 Thread Juan Rey Saura
Thank you !  And excuse me! I was looking for some information about 
that in the mailing list archive and in the WineWeekly News but probably 
I did not pay enough attention.

Mike Hearn wrote:

http://winehq.org/news/?view=147#IWebBrowser%20Status

Some of the discussion is summed up there.

Basically Gecko is huge, roughly as big if not bigger than Wine itself.
KHTML is understandable by one person. It's also more easily adapted to
IEisms.

Alexandre, what's the reasoning behind the no C++ rule?

On Fri, 2003-01-10 at 10:26, Juan Rey Saura wrote:
 

Hi !

I've read in the list there is a project about compiling Mozilla under 
Wine,  I think it would be great.

Several parts of wine need  an IWebBrowser implemtation; CHM support, 
some applications...
One implementation based on the khtml is in the works, but Mozilla does 
implement it yet ( see http://www.iol.ie/~locka/mozilla/mozilla.htm ).

Could Mozilla, under Wine or maybe native version, be used as a 
replacement for the IE IWebBrowser implementation?

   






Re: getting started

2003-01-10 Thread Glen Kaukola
Dimitrie O. Paun wrote:

Compiling stuff with visual studio is a first step. But it should be
very simple to do a Makefile for the examples, how many files do you
have in one example?

Here is an example Makefile that you can use under mingw:
(let me know if it doesn't work, I just typed it inline here, no testing)


Well I know at least the basics of Makefiles already, on linux anyhow. 
I'm thinking I can easily come up with one for each of the sample 
programs in my books.  I guess I was confused by the suggestion to use 
the Makefiles from my book, thinking that there would be something 
special about them.  I'm not very familiar with windows development, so 
it's an honest mistake.  It seems studio doesn't even use makefiles 
though.  By the way, I feel terrible about it, hehe, but I went out and 
got visual c++.  So I guess I'll be testing any executables I produce 
with it as well as going the other route with mingw.  So now unless I 
have any unforseen problems, you probably won't hear from me for a while 
until I find something that doesn't work.

Thanks for taking the time to help me get started.




Wine, Mozilla IE ?

2003-01-10 Thread Juan Rey Saura
Hi !

I've read in the list there is a project about compiling Mozilla under 
Wine,  I think it would be great.

Several parts of wine need  an IWebBrowser implemtation; CHM support, 
some applications...
One implementation based on the khtml is in the works, but Mozilla does 
implement it yet ( see http://www.iol.ie/~locka/mozilla/mozilla.htm ).

Could Mozilla, under Wine or maybe native version, be used as a 
replacement for the IE IWebBrowser implementation?




Re: Wine, Mozilla IE ?

2003-01-10 Thread Ender
Mike asked me to e-mail a status report on my KHTML work, so here it
is :)

I've been too busy lately (job hunting mostly, although I've also been
sick and bedridden lately) to do any more work on it, and I was really
waiting for Alexandre to comment on my question about C++ before going any
further... I havn't seen a reply yet tho.

The current state of my local tree, besides being a mess, is that it has
most QT dependencies removed. Currently it uses a lot of QT stub's around
WinAPI functions that I wish to remove before doing much more work with
it.

It is currently quite MS html compatible, and my CHM viewer seems to have
few problems rendering HtmlHelp pages using the KHTML/KJS functionality.
Unlike Gecko, which is too 'standards compliant'... eg, it deliberatly
doesn't implement any of the IE specific functionality.

The other issue I need to look into is where each part of IE functionality
need to go. Implementing IWebBrowser is easy enough from my current work,
however that is only the very top of the iceburg. The more important issue
is to get all the various parts in the right dlls (shdocvw,  shdoclc,
jscript, ecetra). Many programs that embed IE use and/or subclass a large
number of functions - mostly undocumented - from these dlls, as opposed to
using IWebBrowser itself. There is also the problem of res:// inclusion of
HTML templates embedded in shdocvw, ecetra.

This is, btw, another reason that gecko isn't very well suited. It would
require a lot more work to butcher gecko (simply because of it's size and
complexity) into these stub dlls, than it would to do so to KHTML/KJS.
Either way, it's a lot of work that unfortunatly I don't have all that
much time to do at the moment.

Hopefully my job hunting will calm down soon, and I will have time to
clean up the code to a state where I can at least post it for other people
to work on... then again, if it calms down it means I've FOUND a job... so
it could work both ways :)

 - Ender

On 10 Jan 2003, Mike Hearn wrote:

 Date: 10 Jan 2003 10:39:01 +
 From: Mike Hearn [EMAIL PROTECTED]
 To: Juan Rey Saura [EMAIL PROTECTED]
 Cc: Wine development mailing list [EMAIL PROTECTED]
 Subject: Re: Wine, Mozilla  IE ?

 http://winehq.org/news/?view=147#IWebBrowser%20Status

 Some of the discussion is summed up there.

 Basically Gecko is huge, roughly as big if not bigger than Wine itself.
 KHTML is understandable by one person. It's also more easily adapted to
 IEisms.

 Alexandre, what's the reasoning behind the no C++ rule?

 On Fri, 2003-01-10 at 10:26, Juan Rey Saura wrote:
  Hi !
 
  I've read in the list there is a project about compiling Mozilla under
  Wine,  I think it would be great.
 
  Several parts of wine need  an IWebBrowser implemtation; CHM support,
  some applications...
  One implementation based on the khtml is in the works, but Mozilla does
  implement it yet ( see http://www.iol.ie/~locka/mozilla/mozilla.htm ).
 
  Could Mozilla, under Wine or maybe native version, be used as a
  replacement for the IE IWebBrowser implementation?
 
 --
 Mike Hearn [EMAIL PROTECTED]
 QinetiQ - Malvern Technology Center







Re: Wine, Mozilla IE ?

2003-01-10 Thread Hetz Ben Hamo
 Basically Gecko is huge, roughly as big if not bigger than Wine itself.
 KHTML is understandable by one person. It's also more easily adapted to
 IEisms.

 Alexandre, what's the reasoning behind the no C++ rule?

BTW: if someone follows the kfm-devel (Konqueror's) lists, then you can see 
that people are trying to compile it under windows... 

http://lists.kde.org/?l=kfm-develr=1w=2

Thanks,
Hetz




Possible bug?

2003-01-10 Thread Mike Hearn
Hi, I think this code in menu.c,


BOOL WINAPI SetMenuItemInfoA(HMENU hmenu, UINT item, BOOL bypos,
 const MENUITEMINFOA *lpmii)
{
if ((lpmii-fType  (MF_HILITE|MF_POPUP)) || (lpmii-fState)) {
/* QuickTime does pass invalid data into SetMenuItemInfo.
 * do some of the checks Windows does.
 */
WARN(Bad masks for type (0x%08x) or state (0x%08x)\n,
 lpmii-fType,lpmii-fState );
return FALSE;
}


is buggy, because it checks the type and state even when fMask doesn't
indicate that these fields are being used. It was added by Marcus
Meissner at LinuxTag in 2001 which is why I'm confused, the bug I'm
playing with/learning how to debug with is a regression and didn't exist
a few months ago, yet that code has been in Wine for some time.

Could somebody more experienced than me please look over the description
of the MENUITEMINFO struct:

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/WinUI/WindowsUserInterface/Resources/Menus/MenuReference/MenuStructures/MENUITEMINFO.asp

and the SetMenuItemInfo call:

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/WinUI/WindowsUserInterface/Resources/Menus/MenuReference/MenuFunctions/SetMenuItemInfo.asp

.. and tell me if I'm reading this situation correctly? I don't think it
should be returning false like this when fMask is 6, ie MIIM_ID |
MIIM_SUBMENU.

It'd only take a minute, promise :)


-- 
Mike Hearn [EMAIL PROTECTED]
QinetiQ - Malvern Technology Center





Kaleidagraph demo

2003-01-10 Thread Jos van den Oever
Hello Wine developers,

The one program holding back linux adoption in my lab is the application 
Kaleidgraph. Kaleidagraph is a graphing application that is avaibable for 
Windows and Macintosh.

I've been trying to use Kaleidgraph with wine (wine-20021219) without a 
windows installation on the computer. The installation works pretty well: 
Kaleigraph is installed, only the installer does not exit cleanly but not 
until it asks about displaying the readme file.

Running Kaleidagraph does give quite a few problems. The problems seem to 
arise from bugs and not missing features in wine. One bug for example is, 
that almost all menu entries are listed twice (File Edit Gallery ... Windows 
Edit Gallery ... Windows Help).

I'd like to help in making this program run by testing with the CVS version 
and submitting bugs. However, I think it would be easier if someone more 
experienced looks at the program first and irons out the biggest problems, 
because they are instantly obvious when you try to run the program with wine. 
There is a demo version of Kaleidagraph that can be downloaded for free from 
www.kaleidagraph.com.

Best regards, Jos





Re: Kaleidagraph demo

2003-01-10 Thread Mike Hearn
I'm downloading it now to take a look (until I get a response back on
the menu bug I don't have much to do atm :), but I suggest you upload
the trial exe to a website somewhere if you want people to have a look,
I went through the registration routine but most others won't bother.

 Running Kaleidagraph does give quite a few problems.

Unless all the issues are extremely obvious, you might want to list
them. I have no idea how to work graphing apps for instance, so the
testing I can do is extremely limited.

-- 
Mike Hearn [EMAIL PROTECTED]
QinetiQ - Malvern Technology Center





Re: widl patch

2003-01-10 Thread Greg Turner
On Wednesday 08 January 2003 02:53 pm, Ove Kaaven wrote:
 I've been wondering if perhaps MSVC-type __try/__except
 support can be done on gcc by taking advantage of gcc's support for
 nested functions.

I have a prototype of this and I think it's going to work.  Patches (or 
at least RFC's) should be forthcoming

-- 
gmt

If everyone is thinking alike then somebody isn't
thinking. --George S. Patton





Re: Clean up OSS_Wave{In,Out}Init

2003-01-10 Thread Eric Pouech
Francois Gouget wrote:


This modifies OSS_Wave{In,Out}Init to report the exact capabilities of
the OSS driver. The new code does not try to use SNDCTL_DSP_SETFMTS
since some (old) cards may support 16bit or stereo audio at some sample
rates but not other (higher) rates. It now also reports the 48kHz and
96kHz formats if they are supported.

given the susceptibility of some OSS implementations, I'd suggest 
reimplementing the test loop as:
for fmt
	for channels
		for rates
			if open succeeds
1/ flag format as supported
2/ close device
			endif
		endfor
	endfor
endfor
this would also put us out of danger if the device doesn't accept 
changing its mode on the fly
A+


--
Eric Pouech




dx8 Patches - Question

2003-01-10 Thread Ann and Jason Edmeades
Just a question, I noticed some of the dx8 patches are not applied - Is it
due to the Chrismas backlog where Alexander took a very well deserved break,
or because they have slipped through the cracks (or are there problems with
them)?

Will it help to resubmit them based off the current cvs since there were
about 4 chained together each based off the previous one?

Jason





Re: Wine, Mozilla IE ?

2003-01-10 Thread Dan Kegel
Dan Kegel wrote:

With gcc 3.2 and later, shared libraries
produced by g++ will have a stable ABI,
and different machines (with different versions
of gcc = 3.2) will produce compatible shared libraries.


I forgot to mention: this also means that you
can mix and match shared libraries produced
by *other* c++ compilers, not just gcc!

See
http://www.linuxbase.org/spec/refspecs/
http://www.codesourcery.com/cxx-abi/
http://www.armdevzone.com/EABI/CppABI.html

http://gcc.gnu.org/gcc-3.2/c++-abi.html
http://www.intel.com/software/products/compilers/clin/clinux.htm

and, for a bit of solaris history wrt c++ abis,
http://forte.sun.com/s1scc/articles/CC_abi/CC_abi.html

--
Dan Kegel
Linux User #78045
http://www.kegel.com





Re: Wine, Mozilla IE ?

2003-01-10 Thread Dan Kegel
Mike Hearn wrote:

Alexandre, what's the reasoning behind the no C++ rule?


I don't know the particulars, but I do know that g++'s
ABI only very recently stabilized.  c++ shared libraries are
Not A Good Idea with any version of gcc prior to 3.2
because shared libraries built on one machine might not
work with shared libraries build on another machine.

With gcc 3.2 and later, shared libraries
produced by g++ will have a stable ABI,
and different machines (with different versions
of gcc = 3.2) will produce compatible shared libraries.

Debian 3.0 still uses an older version of gcc, but
Debian Unstable is now transitioning to gcc 3.2 or so,
I think.  Once that's done, there should be little
in the way of using c++ shared libraries in Linux.

(There was one little ABI tweak between 3.2 and 3.3,
and there may be more later, but they probably
won't break many apps.)
- Dan

--
Dan Kegel
Linux User #78045
http://www.kegel.com





Re: Wine, Mozilla IE ?

2003-01-10 Thread Francois Gouget
On Fri, 10 Jan 2003, Dan Kegel wrote:
[...]
 I don't know the particulars, but I do know that g++'s
 ABI only very recently stabilized.
   
Isn't that a contradiction in terms?


[...]
 (There was one little ABI tweak between 3.2 and 3.3,
 and there may be more later, but they probably
 won't break many apps.)

That too seems incompatible with something declared 'stable'.

Not that I have anything against C++, I like OO programming. But these
g++ compatibility issues have been like a cold shower.

rant class=my opinion only
From the point of vue of an ISV, distributing a Wine binary is already
enough trouble with the C library changing their internal implementation
(which of course they are absolutely free to do since it's *internal*)
and FreeType breaking backwards compatibility in minor releases, but if
ISVs also have to deal with g++ changing their ABI on a regular basis...
Well, I guess ISVs could always compile these libraries with Visual C++
and ship them as Windows dlls and thus benefit from a stable and Wine
compatible ABI...
/rant


-- 
Francois Gouget [EMAIL PROTECTED]http://fgouget.free.fr/
  tcA thgirypoC muinelliM latigiD eht detaloiv tsuj evah uoY





Re: wine/dlls/comcat regsvr.c comcat_main.c

2003-01-10 Thread Dimitrie O. Paun
On January 10, 2003 12:48 am, John K. Hohm wrote:
 +CLSID const *clsid;/* NULL for end of list */
[...]
 +{ NULL }   /* list terminator */

Why not terminate the list with a NULL pointer to the struct instead,
it's simpler and more idiomatic...

-- 
Dimi.





Re: Kaleidagraph demo

2003-01-10 Thread Jos van den Oever
On Friday 10 January 2003 17:17, Mike Hearn wrote:
 I'm downloading it now to take a look (until I get a response back on
 the menu bug I don't have much to do atm :), but I suggest you upload
 the trial exe to a website somewhere if you want people to have a look,
 I went through the registration routine but most others won't bother.

Here it is:
http://137.224.129.22/KG35WINDEMO.EXE

 Unless all the issues are extremely obvious, you might want to list
 them. I have no idea how to work graphing apps for instance, so the
 testing I can do is extremely limited.

There are quite a few things that cause the app to crash or draw windows in a 
funny way. Once the app is slighlty useable, I can list more bugs.





Re: Wine, Mozilla IE ?

2003-01-10 Thread Dan Kegel
Francois Gouget wrote:

On Fri, 10 Jan 2003, Dan Kegel wrote:

(There was one little ABI tweak between 3.2 and 3.3,
and there may be more later, but they probably
won't break many apps.)


That too seems incompatible with something declared 'stable'.

Not that I have anything against C++, I like OO programming. But these
g++ compatibility issues have been like a cold shower.


Yes, indeed.  But things are looking *much* better.  As I mentioned
in my links, there's now an ABI standard that all c++ compilers
can conform to, and at least Intel, SGI, and Gnu are all trying very
hard to conform to it.  gcc 3.0 was the first gcc to try to conform;
gcc 3.2 fixed a bunch of conformance problems; gcc 3.3 fixed a couple
tiny ones that became evident after 3.2 was released.


rant class=my opinion only

From the point of vue of an ISV, distributing a Wine binary is already

enough trouble with the C library changing their internal implementation
(which of course they are absolutely free to do since it's *internal*)
and FreeType breaking backwards compatibility in minor releases, but if
ISVs also have to deal with g++ changing their ABI on a regular basis...
Well, I guess ISVs could always compile these libraries with Visual C++
and ship them as Windows dlls and thus benefit from a stable and Wine
compatible ABI...
/rant


The g++ ABI will *not* change on a regular basis.  It is rapidly
converging on the portable C++ ABI shared by several vendors,
and defined in a standards document.

- Dan

--
Dan Kegel
Linux User #78045
http://www.kegel.com





Re: Kaleidagraph demo

2003-01-10 Thread Mike Hearn
 There are quite a few things that cause the app to crash or draw windows in a 
 funny way. Once the app is slighlty useable, I can list more bugs.

Yeah, I just tried it. Clearly not happy at all. I'm getting lots of
errors saying it didn't call BeginPaint in a WM_PAINT handler, which
iirc is a bug in the app? I think you're always supposed to call
BeginPaint when you receive a WM_PAINT message at some point (unless
it's actually a bug in the wine controls library).

It doesn't run at all with the latest version of CrossOver, with the Dec
19th release it runs but with lots of nasty bugs. I don't see the menu
duplication error though.

When I got that automated email from Synergy I replied telling them
about Wine, maybe they'd be willing to help it run. Oh well, here's to
dreaming :)

BTW I am very much a newbie Wine developer so I can probably give hints
only.

-- 
Mike Hearn [EMAIL PROTECTED]
QinetiQ - Malvern Technology Center





Re: Wine, Mozilla IE ?

2003-01-10 Thread Francois Gouget
On Fri, 10 Jan 2003, Dan Kegel wrote:
[...]
 The g++ ABI will *not* change on a regular basis.  It is rapidly
 converging on the portable C++ ABI shared by several vendors,
 and defined in a standards document.

That's good news. especially if multiple vendors use the same ABI it
seems all the more likely to actually be stable.

-- 
Francois Gouget [EMAIL PROTECTED]http://fgouget.free.fr/
It really galls me that most of the computer power in the world
  is wasted on screen savers.
 Chris Caldwell from the GIMPS project
   http://www.mersenne.org/prime.htm





Readfile on a duplicated pipe hangs

2003-01-10 Thread Uwe Bonnes
Hallo,

Marcus sent me patches that made Altera quartus install. Thanks. 

Now running the package hangs in the way it communicates with created
processes. 

Here is what happens in my understanding:
M: Masterprocess C: Childprocess

M: CreatePipe - handle_read + handle_write
M: DuplicateHandle handle_read - handle_read_dup
M: CloseHandle (handle_read)
M: Call CreateProcessA with handle_write as hstderr
M: Return Createprocess
M: CloseHandle (handle_write)
M: Call Readfile (handle_read_dup)
C: initializes, executes and exit
M: Return Readfile retval=0001
M: Endless loop of Call Readfile (handle_read_dup) retval=0001

MSDN says, that ReadFile should fail on an anonymous pipe, if the othe end
has close.

With following patch, the application starts up. Feedback welcome.


Index: wine/server/pipe.c
===
RCS file: /home/wine/wine/server/pipe.c,v
retrieving revision 1.24
diff -u -r1.24 pipe.c
--- wine/server/pipe.c  30 May 2002 20:12:58 -  1.24
+++ wine/server/pipe.c  10 Jan 2003 20:28:43 -
@@ -141,6 +141,13 @@
 
 static int pipe_get_info( struct object *obj, struct get_file_info_reply *reply, int 
*flags )
 {
+struct pipe *pipe = (struct pipe *)obj;
+assert( obj-ops == pipe_ops );
+if (!pipe-other)
+{
+set_error( STATUS_PIPE_BROKEN );
+return -1;
+}
 if (reply)
 {
 reply-type= FILE_TYPE_PIPE;

-- 
Uwe Bonnes[EMAIL PROTECTED]

Institut fuer Kernphysik  Schlossgartenstrasse 9  64289 Darmstadt
- Tel. 06151 162516  Fax. 06151 164321 --




Re: Wine, Mozilla IE ?

2003-01-10 Thread Dimitrie O. Paun
On January 10, 2003 06:45 am, Ender wrote:
 The current state of my local tree, besides being a mess, is that it has
 most QT dependencies removed. Currently it uses a lot of QT stub's around
 WinAPI functions that I wish to remove before doing much more work with
 it.

Ender, you may be right that we might have to integrate something into
the tree. Nonetheless, it scares me shitless! What happens 3 mo, 1 year
down the road? KHTML is very much a work in progress, who's gonna track
it? We don't have any richedit control, heck even our bog standard edit
box is not finished! And for how many years now?!? Just for curiosity's
sake, can you give us a wc -l of the KHTML stuff?

If we do have to integrate something, I think we *have* to have a way to
track the KHTML development. Just throwing something in the tree may
actually be detrimental, if it remains unmaintained. To be able to track
the KHTML development, we need to keep track of the revisions we worked
off of, and we have to avoid touching their sources. To this end, I think
we are much better off by implementing a QT subset:
-- It should be a lot stabler than the KHTML stuff. It seems to
   me QT hasn't change that much from the 1.0 days, now it should
   be close to a libc in terms of interface stability.
-- I haven't looked, but I assume KHTML can't use that many
   difficult to implement QT features
-- Having a free QT/Windows implementation is generally useful to
   a lot of people, so we're likely to get more people to help
If our changes to the KHTML source are minor, I am certain the KDE people
will help us by integrating them upstream. If in time we can work off of
the same code base, we can simply delete our copy from the Wine tree.

There might be another way. Now that Safari is out and it's deQTfied,
and having more and more people interested in KHTML, the KDE folk may
decide to officially switch to a QT-free KHTML version, in which case
we'll be saved the trouble of implementing a WQT (pronounced wicked :)).

-- 
Dimi.





Re: Wine, Mozilla IE ?

2003-01-10 Thread Dimitrie O. Paun
On January 10, 2003 02:07 pm, Francois Gouget wrote:
 and FreeType breaking backwards compatibility in minor releases, but if
 ISVs also have to deal with g++ changing their ABI on a regular basis...

A valid concern. But it should be a configure option (--with[out]-khtml),
so they can easily disable if need be. Anyway, people should not need to
ship an embedded Wine. With a bit of luck, we will ship a 0.9 this year,
(and hopefully 1.0), it should be like glibc soon :). Besides, the interface
to _Wine_ is always C, it doesn't matter that Wine uses C++ internally.
If there are compatibility concerns, we just statically link -lstd++, and
be done with it.

-- 
Dimi.





Re: Wine, Mozilla IE ?

2003-01-10 Thread Roderick Colenbrander
Why don't look at the stuff Apple made for their khtml wrapper? They made two 
components to interact with khtml. One javascript wrapper (JavascriptCore) 
and another component containing some sort of QT wrapper called WebCore. The 
license of WebCore looks LGPL compatible (not 100% sure), so perhaps it is 
possible to reuse the stuff they made. 

When khtml gets an update they can plug it in this framework and it should 
work. (theoraticly)



On Friday 10 January 2003 20:03, Dimitrie O. Paun wrote:
 On January 10, 2003 06:45 am, Ender wrote:
  The current state of my local tree, besides being a mess, is that it has
  most QT dependencies removed. Currently it uses a lot of QT stub's around
  WinAPI functions that I wish to remove before doing much more work with
  it.

 Ender, you may be right that we might have to integrate something into
 the tree. Nonetheless, it scares me shitless! What happens 3 mo, 1 year
 down the road? KHTML is very much a work in progress, who's gonna track
 it? We don't have any richedit control, heck even our bog standard edit
 box is not finished! And for how many years now?!? Just for curiosity's
 sake, can you give us a wc -l of the KHTML stuff?

 If we do have to integrate something, I think we *have* to have a way to
 track the KHTML development. Just throwing something in the tree may
 actually be detrimental, if it remains unmaintained. To be able to track
 the KHTML development, we need to keep track of the revisions we worked
 off of, and we have to avoid touching their sources. To this end, I think
 we are much better off by implementing a QT subset:
   -- It should be a lot stabler than the KHTML stuff. It seems to
  me QT hasn't change that much from the 1.0 days, now it should
  be close to a libc in terms of interface stability.
   -- I haven't looked, but I assume KHTML can't use that many
  difficult to implement QT features
   -- Having a free QT/Windows implementation is generally useful to
  a lot of people, so we're likely to get more people to help
 If our changes to the KHTML source are minor, I am certain the KDE people
 will help us by integrating them upstream. If in time we can work off of
 the same code base, we can simply delete our copy from the Wine tree.

 There might be another way. Now that Safari is out and it's deQTfied,
 and having more and more people interested in KHTML, the KDE folk may
 decide to officially switch to a QT-free KHTML version, in which case
 we'll be saved the trouble of implementing a WQT (pronounced wicked :)).





Re: Help with /?? stuff

2003-01-10 Thread Shachar Shemesh
Alberto Massari wrote:


You can read from the MSDN page 
(http://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/base/movefileex.asp) 
what is the format used by MoveFileEx. That string is a NULL-separated 
list of pairs of files, where the first one is the source and the 
second is the target of the move operation (if the target is missing, 
the file should be deleted).

Yes, that's the definition of REG_MULTI_SZ. Unfortunetly, if you delete 
a file, and then perform more delayed operations, the result is a series 
of NULL terminated strings, followed by an empty string (which is the 
REG_MULTI_SZ agreed end of strings mark), followed by more strings. This 
means that MS is misusing the REG_MULTI_SZ type with something that is 
the wrong format. No big deal, just an observation.

I guess Wine is converting the NULL into \?? to be able to store it as 
a string.

You guessed wrong. The leading \?? is there under both Wine and Windows 
2000, and in both cases there is ALSO a NULL. As neither Wine nor 
Windows 2000 then accepts that as a valid path, I'll just remove it. I 
was just wondering whether anyone knows why Windows 2000 puts that extra 
stuff in (it's obvious why wine does that - to be compatible).


BTW, do you need any help on this task? 

Need is a strong term. I can complete the task on my own, but your 
help will be most welcome (in other words, if there is another aread of 
Wine that needs your attention and noone seems to be working on, that 
would be a better use of everyone's time). If you want to help with 
wineboot, I think the best place to start is with the win.ini 
processing, and then to port Andy's function to run whole run keys to 
the new prog.

If you do decide to help with wineboot, please email me in private when 
starting to work on each activity, to prevent competition on writing 
stuff in.

Here is an excerpt of the doc:


I guess this is one of those cases where the official MS docs don't 100% 
tell you everything you need to know to reimplement. Thank goodness 
these are very rare and far apart. Thank goodness even more that the 
cases where they don't tell you everything you need to know in order to 
use are even rarer.

The PendingFileRenameOperations value is of type REG_MULTI_SZ. Each 
rename operation stores a pair of NULL-terminated strings. The system 
uses these registry entries to complete the operations at restart in 
the same order that they were issued. For example, the following code 
fragment creates registry entries that delete szDstFile and rename 
szSrcFile to be szDstFile at restart:


MoveFileEx(szDstFile, NULL, MOVEFILE_DELAY_UNTIL_REBOOT);
MoveFileEx(szSrcFile, szDstFile, MOVEFILE_DELAY_UNTIL_REBOOT);

The system stores the following entries in PendingFileRenameOperations:


szDstFile*\0\0* 

According to the REG_MUTLI_SZ definition, that would have meant the end 
of the list of strings. IMHO, storing these values in REG_BINARY would 
have been better (and would have not changed the code one little bit, 
mind you).


szSrcFile\0szDstFile\0\0 

Again, actually looking at the keys with a registry editor reveals that 
a \??\ is prepended to each one of these. If anyone has any different 
experience, please let me know, but it is clear from the MoveFileExW 
code that whoever implemented that found the same thing when they (he? 
Are there any women on the Authors list?) looked at the registry.

Alberto


   Shachar






Re: Wine, Mozilla IE ?

2003-01-10 Thread Dimitrie O. Paun
On January 10, 2003 05:15 pm, Roderick Colenbrander wrote:
 Forgot to include an url to the safari developer page containing the
 usefull source code.

Funny thing is, you forgot the second time as well... :)

-- 
Dimi.





Re: Wine, Mozilla IE ?

2003-01-10 Thread Roderick Colenbrander
Forgot to include an url to the safari developer page containing the usefull 
source code. I rechecked the license of the qt wrapper (kwq) and it looks a 
lot like a BSD license. It also seems possible to easily compile the wrapper 
to work on for example Linux. (only new makefiles are needed)

I hope this helps,

Roderick Colenbrander

On Friday 10 January 2003 21:57, Roderick Colenbrander wrote:
 Why don't look at the stuff Apple made for their khtml wrapper? They made
 two components to interact with khtml. One javascript wrapper
 (JavascriptCore) and another component containing some sort of QT wrapper
 called WebCore. The license of WebCore looks LGPL compatible (not 100%
 sure), so perhaps it is possible to reuse the stuff they made.

 When khtml gets an update they can plug it in this framework and it should
 work. (theoraticly)

 On Friday 10 January 2003 20:03, Dimitrie O. Paun wrote:
  On January 10, 2003 06:45 am, Ender wrote:
   The current state of my local tree, besides being a mess, is that it
   has most QT dependencies removed. Currently it uses a lot of QT stub's
   around WinAPI functions that I wish to remove before doing much more
   work with it.
 
  Ender, you may be right that we might have to integrate something into
  the tree. Nonetheless, it scares me shitless! What happens 3 mo, 1 year
  down the road? KHTML is very much a work in progress, who's gonna track
  it? We don't have any richedit control, heck even our bog standard edit
  box is not finished! And for how many years now?!? Just for curiosity's
  sake, can you give us a wc -l of the KHTML stuff?
 
  If we do have to integrate something, I think we *have* to have a way to
  track the KHTML development. Just throwing something in the tree may
  actually be detrimental, if it remains unmaintained. To be able to track
  the KHTML development, we need to keep track of the revisions we worked
  off of, and we have to avoid touching their sources. To this end, I think
  we are much better off by implementing a QT subset:
  -- It should be a lot stabler than the KHTML stuff. It seems to
 me QT hasn't change that much from the 1.0 days, now it should
 be close to a libc in terms of interface stability.
  -- I haven't looked, but I assume KHTML can't use that many
 difficult to implement QT features
  -- Having a free QT/Windows implementation is generally useful to
 a lot of people, so we're likely to get more people to help
  If our changes to the KHTML source are minor, I am certain the KDE people
  will help us by integrating them upstream. If in time we can work off of
  the same code base, we can simply delete our copy from the Wine tree.
 
  There might be another way. Now that Safari is out and it's deQTfied,
  and having more and more people interested in KHTML, the KDE folk may
  decide to officially switch to a QT-free KHTML version, in which case
  we'll be saved the trouble of implementing a WQT (pronounced wicked :)).





Windows 2000 conformance test update

2003-01-10 Thread Dave Miller
Here are three updates for the status page.  I think user32/sysparams passed
for me previously.

C:\winetestskernel32_test.exe path
path.c:514: Test failed: GetLongPathNameA: wrong return code, 97 instead of
42
path.c:881:TMP=C:\DOCUME~1\davidm\LOCALS~1\Temp
path.c:892:TMP=C:\WINNT
path.c:902:TMP=C:\
path.c:912:TMP=C:
path: 1730 tests executed, 0 marked as todo, 1 failure.

C:\winetestsurlmon_test generated
generated: 4 tests executed, 0 marked as todo, 0 failures.

C:\winetestsuser32_test sysparams
sysparams.c:184:testing SPI_{GET,SET}BEEP
sysparams.c:306:testing SPI_{GET,SET}MOUSE
sysparams.c:374:testing SPI_{GET,SET}BORDER
sysparams.c:170: Test failed: Wrong value in registry: subKey=Control
Panel\Desktop, valName=BorderWidth, testValue=1, value=
sysparams.c:170: Test failed: Wrong value in registry: subKey=Control
Panel\Desktop, valName=BorderWidth, testValue=0, value=
sysparams.c:139: Test failed: Missed a message: change_counter=2
sysparams.c:170: Test failed: Wrong value in registry: subKey=Control
Panel\Desktop, valName=BorderWidth, testValue=7, value=
sysparams.c:170: Test failed: Wrong value in registry: subKey=Control
Panel\Desktop, valName=BorderWidth, testValue=20, value=
sysparams.c:406:testing SPI_{GET,SET}KEYBOARDSPEED
sysparams.c:139: Test failed: Missed a message: change_counter=2
sysparams.c:440:testing SPI_ICONHORIZONTALSPACING
sysparams.c:170: Test failed: Wrong value in registry: subKey=Control
Panel\Desktop, valName=IconSpacing, testValue=101, value=
sysparams.c:170: Test failed: Wrong value in registry: subKey=Control
Panel\Desktop, valName=IconSpacing, testValue=32, value=
sysparams.c:480:testing SPI_{GET,SET}SCREENSAVETIMEOUT
sysparams.c:515:testing SPI_{GET,SET}SCREENSAVEACTIVE
sysparams.c:555:testing SPI_{GET,SET}KEYBOARDDELAY
sysparams.c:590:testing SPI_ICONVERTICALSPACING
sysparams.c:170: Test failed: Wrong value in registry: subKey=Control
Panel\Desktop, valName=IconVerticalSpacing, testValue=101, value=
sysparams.c:170: Test failed: Wrong value in registry: subKey=Control
Panel\Desktop, valName=IconVerticalSpacing, testValue=32, value=
sysparams.c:635:testing SPI_{GET,SET}ICONTITLEWRAP
sysparams.c:170: Test failed: Wrong value in registry: subKey=Control
Panel\Desktop, valName=IconTitleWrap, testValue=1, value=
sysparams.c:170: Test failed: Wrong value in registry: subKey=Control
Panel\Desktop, valName=IconTitleWrap, testValue=0, value=
sysparams.c:670:testing SPI_{GET,SET}MENUDROPALIGNMENT
sysparams.c:707:testing SPI_SETDOUBLECLKWIDTH
sysparams.c:738:testing SPI_SETDOUBLECLKHEIGHT
sysparams.c:770:testing SPI_SETDOUBLECLICKTIME
sysparams.c:817:testing SPI_SETMOUSEBUTTONSWAP
sysparams.c:880:testing SPI_{GET,SET}DRAGFULLWINDOWS
sysparams.c:915:testing SPI_{GET,SET}WORKAREA
sysparams.c:953:testing SPI_{GET,SET}SHOWSOUNDS
sysparams.c:997:testing SPI_{GET,SET}DESKWALLPAPER
sysparams: 318 tests executed, 0 marked as todo, 12 failures.





Re: dx8 Patches - Question

2003-01-10 Thread Alexandre Julliard
Ann and Jason Edmeades [EMAIL PROTECTED] writes:

 Just a question, I noticed some of the dx8 patches are not applied - Is it
 due to the Chrismas backlog where Alexander took a very well deserved break,
 or because they have slipped through the cracks (or are there problems with
 them)?
 
 Will it help to resubmit them based off the current cvs since there were
 about 4 chained together each based off the previous one?

Most likely they slipped through the cracks; I may still have them in
my queue, but it never hurts to resubmit. And especially in an area
that has been undergoing many changes, I always prefer to apply an
up-to-date patch than a 2 weeks old one.

-- 
Alexandre Julliard
[EMAIL PROTECTED]




Re: wine/dlls/comcat regsvr.c comcat_main.c

2003-01-10 Thread John K. Hohm
Quoting Dimitrie O. Paun [EMAIL PROTECTED]:

 On January 10, 2003 12:48 am, John K. Hohm wrote:
  +CLSID const *clsid;/* NULL for end of list */
 [...]
  +{ NULL }   /* list terminator */
 
 Why not terminate the list with a NULL pointer to the struct instead,
 it's simpler and more idiomatic...

It is because I am using a list of structures, not a list of pointers to
structures.  How would you create a static list of pointers to structures,
without naming each one?




Re: Help with /?? stuff

2003-01-10 Thread John K. Hohm
  Alberto Massari wrote:
  I guess Wine is converting the NULL into \?? to be able to store it as 
  a string.

Shachar Shemesh wrote:
 You guessed wrong. The leading \?? is there under both Wine and Windows 
 2000, and in both cases there is ALSO a NULL. As neither Wine nor 
 Windows 2000 then accepts that as a valid path, I'll just remove it. I 
 was just wondering whether anyone knows why Windows 2000 puts that extra 
 stuff in (it's obvious why wine does that - to be compatible).

I'm not sure about \??, but see this excerpt from MSDN Re CreateFile:

lpFileName [in]
Pointer to a null-terminated string that specifies the name of the object
to create or open.

In the ANSI version of this function, the name is limited to MAX_PATH 
characters. To extend this limit to 32,767 wide characters, call the
Unicode version of the function and prepend \\?\ to the path. For more
information, see Naming a File.

Windows 95/98/Me:  This string must not exceed MAX_PATH characters. 





Re: Wine, Mozilla IE ?

2003-01-10 Thread Alexandre Julliard
Mike Hearn [EMAIL PROTECTED] writes:

 Alexandre, what's the reasoning behind the no C++ rule?

Some of the reasons are related to C++ itself: lack of standard ABI,
large differences between compilers making it harder to write portable
code. Other reasons would apply to any language: more complex build
process, more external tool dependencies, harder to debug, developers
need to be familiar with both languages, harder to copy code around,
etc.

None of these are showstoppers, but it needs a *really* good reason to
overcome all of them. So far I haven't heard anything convincing
enough.

-- 
Alexandre Julliard
[EMAIL PROTECTED]




Re: dx8 Patches - Question

2003-01-10 Thread Raphaël Junqueira
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On Friday 10 January 2003 23:47, Alexandre Julliard wrote:
 Ann and Jason Edmeades [EMAIL PROTECTED] writes:
  Just a question, I noticed some of the dx8 patches are not applied - Is
  it due to the Chrismas backlog where Alexander took a very well deserved
  break, or because they have slipped through the cracks (or are there
  problems with them)?
 
  Will it help to resubmit them based off the current cvs since there were
  about 4 chained together each based off the previous one?

 Most likely they slipped through the cracks; I may still have them in
 my queue, but it never hurts to resubmit. And especially in an area
 that has been undergoing many changes, I always prefer to apply an
 up-to-date patch than a 2 weeks old one.

Hi all, 

i coming back just in time ;)

Ok, how do you prefer:
- - a huge d3d8 patch (very easy for me)
- - many many little patches (h)

but we have a new external need: the new x11drv/GLX stuff (know as [WINE-D3D] glx 
init and D3D stuff)
who is the begin for GL abstraction.

thanks,
 Raphael
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.1 (GNU/Linux)

iD8DBQE+H1CBp7NA3AmQTU4RAngtAKCNnwizlB/6Iv6lwQwxcnQHEoRrdACfa3Vc
BZrME9svDXLUIIlwncUaGM0=
=IjwJ
-END PGP SIGNATURE-





Re: [D3D8 - 1] resend of Jason Texture work + many fixes

2003-01-10 Thread Raphal Junqueira
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On Saturday 11 January 2003 01:27, Raphaël Junqueira wrote:
 Hi again,

I forgot to say with this patch now:

- - i have run successfully the NVIDIA Effects Browser 3.0 
(http://developer.nvidia.com/view.asp?IO=NVEffectsBrowser_3) 
with many effects as Aniso 
(http://developer.nvidia.com/view.asp?IO=Anisotropic_Lighting) or membrane_lighting 
(http://developer.nvidia.com/view.asp?IO=membrane_lighting) in pure vertex shader 
software emulation
- - Warcraf3 Demo begin to run
- - SplinterCell Demo now complain about stencil support

anyone have other Dx8 games demos for testing (simple if possible) ?

 Thanks
   Raphael
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.1 (GNU/Linux)

iD8DBQE+H2hKp7NA3AmQTU4RAvalAJ9v746sFf+RiEGzC/Vuv1NBnprAsQCaAwdQ
WiIc/yV8HbZe0iw3CwJoFuE=
=He8Q
-END PGP SIGNATURE-





Re: PATCH - Check/Define for vsnprintf/_vsnprintf

2003-01-10 Thread Dimitrie O. Paun
On January 10, 2003 07:47 pm, Steven Edwards wrote:
 Changelog: (porting fix for Mingw/Windows)
check for vsnprintf and _vsnprintf
define vsnprintf with _vsnprintf

Alexandre, why don't we link with oldnames.lib in Windows, and
get rid of all these tests?

-- 
Dimi.





wine/ole error on Mingw32/MSYS

2003-01-10 Thread Steven Edwards
Platform is a older MSYS and GCC (3.1 something I think). I'm still getting settled in 
from
getting tied-down so I cant test this on the latest mingw-current. only on dial-up 
here for now
=(.
Anyway any idea about this?

Thanks
Steven



$ make
gcc -c -I. -I. -I../include -I../include  -DWINE_NOWINSOCK -Wall -mpreferred-sta
ck-boundary=2 -gstabs+  -D__WINESRC__ -D_REENTRANT -o dx8guid.o dx8guid.c
In file included from dx8guid.c:26:
../include/winuser.h:2396: unnamed fields of type other than struct or union are
 not allowed
../include/winuser.h:2409: unnamed fields of type other than struct or union are
 not allowed
make: *** [dx8guid.o] Error 1

__
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com




Re: wine/ole error on Mingw32/MSYS

2003-01-10 Thread Dimitrie O. Paun
On January 10, 2003 07:53 pm, Steven Edwards wrote:
 $ make
 gcc -c -I. -I. -I../include -I../include  -DWINE_NOWINSOCK -Wall
 -mpreferred-sta ck-boundary=2 -gstabs+  -D__WINESRC__ -D_REENTRANT -o
 dx8guid.o dx8guid.c In file included from dx8guid.c:26:
 ../include/winuser.h:2396: unnamed fields of type other than struct or
 union are not allowed
 ../include/winuser.h:2409: unnamed fields of type other than struct or
 union are not allowed
 make: *** [dx8guid.o] Error 1

Yes,
Try adding:

#define NONAMELESSUNION
#define NONAMELESSSTRUCT

Before the windows includes in files where you get this error.
Look in dlls/comctl32/comctl32undoc.c for an example.

-- 
Dimi.





Re: msvcrt: stubs for chsize, dup, dup2

2003-01-10 Thread Steven Edwards
--- Dimitrie O. Paun [EMAIL PROTECTED] wrote:
 These are needed by the inline functions in the header.
 
 ChangeLog
   Create stubs for chsize, dup, and dup2.

I think chsize and ftruncate do the same thing so is there anyway to forward the call 
for chsize
to ftruncate on platforms that have it? I added a configure check for this a while 
back because
windows doesnt have ftruncate and makedep needs it.

__
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com




Re: wine/ole error on Mingw32/MSYS

2003-01-10 Thread Raphaël Junqueira
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On Saturday 11 January 2003 01:53, Steven Edwards wrote:
 Platform is a older MSYS and GCC (3.1 something I think). I'm still getting
 settled in from getting tied-down so I cant test this on the latest
 mingw-current. only on dial-up here for now =(.
 Anyway any idea about this?

 Thanks
 Steven



 $ make
 gcc -c -I. -I. -I../include -I../include  -DWINE_NOWINSOCK -Wall
 -mpreferred-sta ck-boundary=2 -gstabs+  -D__WINESRC__ -D_REENTRANT -o
 dx8guid.o dx8guid.c In file included from dx8guid.c:26:
 .../include/winuser.h:2396: unnamed fields of type other than struct or
 union are not allowed
 .../include/winuser.h:2409: unnamed fields of type other than struct or
 union are not allowed
 make: *** [dx8guid.o] Error 1

it seems it don't like this:

typedef struct tagMONITORINFOEXA
{
MONITORINFO DUMMYSTRUCTNAME;
CHARszDevice[CCHDEVICENAME];
} MONITORINFOEXA, *LPMONITORINFOEXA;

who become (as unnamed is active):

typedef struct tagMONITORINFOEXA
{
MONITORINFO ;
CHARszDevice[CCHDEVICENAME];
} MONITORINFOEXA, *LPMONITORINFOEXA;

h it don't seems correct to me

and if i do:
- -={$:'/cvs-src/winetest/dlls/d3d8'}=-grep DUMMYSTRUCTNAME ../../include/*
../../include/d3d8types.h:} DUMMYSTRUCTNAME;
../../include/dsdriver.h:} DUMMYSTRUCTNAME;
../../include/mmsystem.h:   } DUMMYSTRUCTNAME;
../../include/mmsystem.h:   } DUMMYSTRUCTNAME1;
../../include/mmsystem.h:   } DUMMYSTRUCTNAME;
../../include/mmsystem.h:   } DUMMYSTRUCTNAME1;
../../include/objidl.h:} DUMMYSTRUCTNAME;
../../include/winbase.h:} DUMMYSTRUCTNAME;
../../include/wingdi.h:  } DUMMYSTRUCTNAME1;
../../include/wingdi.h:  } DUMMYSTRUCTNAME1;
../../include/winnt.h:#define DUMMYSTRUCTNAME
../../include/winnt.h:#define DUMMYSTRUCTNAME1
../../include/winnt.h:#define DUMMYSTRUCTNAME2
../../include/winnt.h:#define DUMMYSTRUCTNAME3
../../include/winnt.h:#define DUMMYSTRUCTNAME4
../../include/winnt.h:#define DUMMYSTRUCTNAME5
../../include/winnt.h:#define DUMMYSTRUCTNAME   s
../../include/winnt.h:#define DUMMYSTRUCTNAME1  s1
../../include/winnt.h:#define DUMMYSTRUCTNAME2  s2
../../include/winnt.h:#define DUMMYSTRUCTNAME3  s3
../../include/winnt.h:#define DUMMYSTRUCTNAME4  s4
../../include/winnt.h:#define DUMMYSTRUCTNAME5  s5
../../include/winnt.h:  } DUMMYSTRUCTNAME1;
../../include/winnt.h:  } DUMMYSTRUCTNAME2;
../../include/winnt.h:  } DUMMYSTRUCTNAME3;
../../include/winnt.h:} DUMMYSTRUCTNAME;
../../include/winnt.h:} DUMMYSTRUCTNAME;
../../include/winuser.h:MONITORINFO DUMMYSTRUCTNAME;
../../include/winuser.h:MONITORINFO DUMMYSTRUCTNAME;
../../include/wtypes.h:} DUMMYSTRUCTNAME;
../../include/wtypes.idl:cpp_quote(} DUMMYSTRUCTNAME;)

only 2 typedefed_struct DUMMYSTRUCTNAME; exists and they don't compile ... 

Raphael

 __
 Do you Yahoo!?
 Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
 http://mailplus.yahoo.com
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.1 (GNU/Linux)

iD8DBQE+H2/up7NA3AmQTU4RAgVEAJ9Yxwfx0YCwaxNwM55AvgUc3qSWoQCdErG4
OAIkzuYrr0uHgS1ypEEL+Co=
=0QTd
-END PGP SIGNATURE-





Re: [RFC] msvcrt: defines break C++ code

2003-01-10 Thread Dimitrie O. Paun
On January 10, 2003 01:05 pm, Alexandre Julliard wrote:
 I think making them inline functions should work for now.

whineHow come I always get these assignments?/whine :)

Hey, I did just some of them (basically io.h and sys/*.h),
to preserve some form of sanity. Too much header work can
lead to violent behaviour...

This patch depends on msvcrt: stubs for chsize, dup, dup2
and it obsoletes sys/{stat,types}.h: mode_t, umask (take 2)
since I was difficult to separate them.

Also, I did not know what to do about _open(), and _sopen()
as they take variable number of arguments, so I've left them
as macros. Any ideas for these are welcome.

ChangeLog
  Use inline functions instead of macros to avoid problems in C++
  Inline functions respect scope, whereas macros don't.
  Define umask in sys/stat.h and sys/types.h, and mode_t in sys/types.h

Index: include/msvcrt/io.h
===
RCS file: /var/cvs/wine/include/msvcrt/io.h,v
retrieving revision 1.3
diff -u -r1.3 io.h
--- include/msvcrt/io.h 18 Dec 2002 20:17:20 -  1.3
+++ include/msvcrt/io.h 10 Jan 2003 23:00:10 -
@@ -156,27 +156,30 @@
 
 
 #ifndef USE_MSVCRT_PREFIX
-#define access _access
-#define chmod _chmod
-#define chsize _chsize
-#define close _close
-#define creat _creat
-#define dup _dup
-#define dup2 _dup2
-#define eof _eof
-#define filelength _filelength
-#define isatty _isatty
-#define locking _locking
-#define lseek _lseek
-#define mktemp _mktemp
+inline int access(const char* path, int mode) { return _access(path, mode); }
+inline int chmod(const char* path, int mode) { return _chmod(path, mode); }
+inline int chsize(int fd, long size) { return _chsize(fd, size); }
+inline int close(int fd) { return _close(fd); }
+inline int creat(const char* path, int mode) { return _creat(path, mode); }
+inline int dup(int od) { return _dup(od); }
+inline int dup2(int od, int nd) { return _dup2(od, nd); }
+inline int eof(int fd) { return _eof(fd); }
+inline long filelength(int fd) { return _filelength(fd); }
+inline int isatty(int fd) { return _isatty(fd); }
+inline int locking(int fd, int mode, long size) { return _locking(fd, mode, size); }
+inline long lseek(int fd, long off, int where) { return _lseek(fd, off, where); }
+inline char* mktemp(char* pat) { return _mktemp(pat); }
 #define open _open
-#define read _read
-#define setmode _setmode
+inline int read(int fd, void* buf, unsigned int size) { return _read(fd, buf, size); }
+inline int setmode(int fd, int mode) { return _setmode(fd, mode); }
 #define sopen _sopen
-#define tell _tell
-#define umask _umask
-#define unlink _unlink
-#define write _write
-#endif /* USE_MSVCRT_PREFIX */
+inline long tell(int fd) { return _tell(fd); }
+#ifndef MSVCRT_UMASK_DEFINED
+inline int umask(int fd) { return _umask(fd); }
+#define MSVCRT_UMASK_DEFINED
+#endif
+inline int unlink(const char* path) { return _unlink(path); }
+inline int write(int fd, const void* buf, unsigned int size) { return _write(fd, buf, 
+size); }
+#endif /* USE _MSVCRT_PREFIX */
 
 #endif /* __WINE_IO_H */
Index: include/msvcrt/sys/stat.h
===
RCS file: /var/cvs/wine/include/msvcrt/sys/stat.h,v
retrieving revision 1.6
diff -u -r1.6 stat.h
--- include/msvcrt/sys/stat.h   18 Dec 2002 20:17:20 -  1.6
+++ include/msvcrt/sys/stat.h   10 Jan 2003 19:15:38 -
@@ -106,6 +106,7 @@
 int MSVCRT(_stat)(const char*,struct _stat*);
 int _fstati64(int,struct _stati64*);
 int _stati64(const char*,struct _stati64*);
+int _umask(int);
 
 #ifndef MSVCRT_WSTAT_DEFINED
 #define MSVCRT_WSTAT_DEFINED
@@ -127,8 +128,12 @@
 #define S_IWRITE _S_IWRITE
 #define S_IEXEC  _S_IEXEC
 
-#define fstat _fstat
-#define stat _stat
+inline int fstat(int fd, struct _stat* ptr) { return _fstat(fd, ptr); }
+inline int stat(const char* path, struct _stat* ptr) { return _stat(path, ptr); }
+#ifndef MSVCRT_UMASK_DEFINED
+inline int umask(int fd) { return _umask(fd); }
+#define MSVCRT_UMASK_DEFINED
+#endif
 #endif /* USE_MSVCRT_PREFIX */
 
 #endif /* __WINE_SYS_STAT_H */
Index: include/msvcrt/sys/timeb.h
===
RCS file: /var/cvs/wine/include/msvcrt/sys/timeb.h,v
retrieving revision 1.4
diff -u -r1.4 timeb.h
--- include/msvcrt/sys/timeb.h  18 Dec 2002 20:17:20 -  1.4
+++ include/msvcrt/sys/timeb.h  10 Jan 2003 18:10:39 -
@@ -60,7 +60,7 @@
 #ifndef USE_MSVCRT_PREFIX
 #define timeb _timeb
 
-#define ftime _ftime
+inline void ftime(struct _timeb* ptr) { return _ftime(ptr); }
 #endif /* USE_MSVCRT_PREFIX */
 
 #endif /* __WINE_SYS_TIMEB_H */
Index: include/msvcrt/sys/types.h
===
RCS file: /var/cvs/wine/include/msvcrt/sys/types.h,v
retrieving revision 1.6
diff -u -r1.6 types.h
--- include/msvcrt/sys/types.h  18 Dec 2002 20:17:20 -  1.6
+++ include/msvcrt/sys/types.h  10 Jan 2003 19:15:14 -
@@ -39,6 +39,11 @@
 

Re: dx8 Patches - Question

2003-01-10 Thread Alexandre Julliard
Raphaël Junqueira [EMAIL PROTECTED] writes:

 Ok, how do you prefer:
 a huge d3d8 patch (very easy for me)
 many many little patches (h)

Many small patches please g

 but we have a new external need: the new x11drv/GLX stuff (know as [WINE-D3D] glx 
init and D3D stuff)
 who is the begin for GL abstraction.

I don't like this one; the X11 escape interface is a hack that should
be used as little as possible, and export only what's absolutely
necessary. We shouldn't export large structures like that one.

-- 
Alexandre Julliard
[EMAIL PROTECTED]




Re: PATCH - Check/Define for vsnprintf/_vsnprintf

2003-01-10 Thread Alexandre Julliard
Dimitrie O. Paun [EMAIL PROTECTED] writes:

 Alexandre, why don't we link with oldnames.lib in Windows, and
 get rid of all these tests?

Unfortunately there's no vsnprintf in oldnames.lib...

-- 
Alexandre Julliard
[EMAIL PROTECTED]




Re: PATCH - Check/Define for vsnprintf/_vsnprintf

2003-01-10 Thread Steven Edwards
--- Alexandre Julliard [EMAIL PROTECTED] wrote:
 Dimitrie O. Paun [EMAIL PROTECTED] writes:
 
  Alexandre, why don't we link with oldnames.lib in Windows, and
  get rid of all these tests?
 
 Unfortunately there's no vsnprintf in oldnames.lib...

I think I missed something somewhere. Where is oldnames.lib?

Thanks
Steven

__
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com




Re: Wine, Mozilla IE ?

2003-01-10 Thread Ender
 Ender, you may be right that we might have to integrate something into
 the tree. Nonetheless, it scares me shitless! What happens 3 mo, 1 year
 down the road? KHTML is very much a work in progress, who's gonna track
 it? We don't have any richedit control, heck even our bog standard edit
 box is not finished! And for how many years now?!?

I brought up this very same argument when I first took on the task of
porting it over.. however I as basically outvoted with doing the
implementation as more of a wrapper than a true port :P

 off of, and we have to avoid touching their sources. To this end, I think
 we are much better off by implementing a QT subset:

As it seem there is some effort going on to create a native Win32 KHTML
port using Apple's WebCore wrapper system I think I will take a break on
my current code and play with that a little. Personally I didn't want to
have to take on the chore myself, but this whole Safari thing IS creating
more intrest in non-X11/QT platforms... it definatly changes the playing
field, and with the large speed and compatability merges from Safari
lately my current tree is hopelessly out of date anyway :)

So I think I will play with that and work on the DLL layout and COM
interfaces until something eventuates... I've decided it's worth waiting
to see what direction KHTML takes (portability wise) now that it is being
use in a 'real' non-KDE application. There's no point rushing into a
WINE-specific implementation if something more closely tied to the
upstream code is released meer weeks later.

Of course there still a small problem of having to seperate the code into
MS compatible COM objects and DLLs... I will have to benchmark the speed
impact of stubbing the MS dll's into khtml.dll/kjs.dll ecetra, instead of
replicating the exports more natively.

Cheers,
Ender





Re: PATCH - Check/Define for vsnprintf/_vsnprintf

2003-01-10 Thread Francois Gouget
On Fri, 10 Jan 2003, Steven Edwards wrote:

 --- Alexandre Julliard [EMAIL PROTECTED] wrote:
  Dimitrie O. Paun [EMAIL PROTECTED] writes:
 
   Alexandre, why don't we link with oldnames.lib in Windows, and
   get rid of all these tests?
 
  Unfortunately there's no vsnprintf in oldnames.lib...

 I think I missed something somewhere. Where is oldnames.lib?

It's astatic library which ships with Visual C++. You can find it
in VC98\Lib

The issue wrt. open and other variable argument functions may be our cue
that we should really have our own oldnames.a library...

-- 
Francois Gouget [EMAIL PROTECTED]http://fgouget.free.fr/
  Linux: Because rebooting is for adding new hardware





Re: PATCH - Check/Define for vsnprintf/_vsnprintf

2003-01-10 Thread Steven Edwards

 It's astatic library which ships with Visual C++. You can find it
 in VC98\Lib
 
 The issue wrt. open and other variable argument functions may be our cue
 that we should really have our own oldnames.a library...

Sounds good and if it will save me from having to write more boring configure checks 
then I am all
for it. =) Once again I think its one of those things that sounds god but I dont know 
how much I
can help on it other then testing.

Thanks
Steven

__
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com




shlwapi.dll from Wine regression tests on Windows 2000 SP3

2003-01-10 Thread Steven Edwards
I did a compare of windows shlwapi with WINEs shlwapi. 


With Windows 2000 SP3 shlwapi.dll we get -

C:\Documents and Settings\Administrator\Desktop\testshlwapi_test.exe clist
clist: 236 tests executed, 0 marked as todo, 0 failures.

C:\Documents and Settings\Administrator\Desktop\testshlwapi_test.exe generated
generated: 25 tests executed, 0 marked as todo, 0 failures.

C:\Documents and Settings\Administrator\Desktop\testshlwapi_test.exe path
path.c:92: Test failed: Expected ?query=xreturn=y, but got query=xreturn=y
path: 33 tests executed, 0 marked as todo, 1 failure.

C:\Documents and Settings\Administrator\Desktop\testshlwapi_test.exe shreg
shreg.c:171: Test failed: (44,43)
shreg.c:183: Test failed: (2)
shreg.c:195: Test failed: (14,43)
shreg.c:196: Test failed: (2)
shreg.c:204: Test failed: Expected ERROR_MORE_DATA
shreg.c:205: Test failed: ()
shreg.c:206: Test failed: ()
shreg.c:207: Test failed: (1,43)
shreg.c:218: Test failed: (44,43)
shreg.c:262: Test failed: didn't open copy
shreg: 40 tests executed, 0 marked as todo, 10 failures.
C:\Documents and Settings\Administrator\Desktop\test




With the current WINE shlwapi on Windows 2000 we get

C:\Documents and Settings\Administrator\Desktop\testshlwapi_test.exe clist
clist: 236 tests executed, 0 marked as todo, 0 failures.

C:\Documents and Settings\Administrator\Desktop\testshlwapi_test.exe generated
generated: 25 tests executed, 0 marked as todo, 0 failures.

C:\Documents and Settings\Administrator\Desktop\testshlwapi_test.exe path
fixme:shell:URL_ParseUrl failed to parse Lhttp://foo:bar@localhost:21/internal.
php?query=xreturn=y
path.c:81: Test failed: UrlGetPartA didn't return S_OK
fixme:shell:URL_ParseUrl failed to parse Lhttp://foo:bar@localhost:21/internal.
php?query=xreturn=y
path.c:83: Test failed: UrlGetPartW didn't return S_OK
path.c:87: Test failed: Strings didn't match between ascii and unicode UrlGetPar
t!
path.c:92: Test failed: Expected localhost, but got x#9786;ö
fixme:shell:URL_ParseUrl failed to parse Lhttp://foo:bar@localhost:21/internal.
php?query=xreturn=y
path.c:81: Test failed: UrlGetPartA didn't return S_OK
fixme:shell:URL_ParseUrl failed to parse Lhttp://foo:bar@localhost:21/internal.
php?query=xreturn=y
path.c:83: Test failed: UrlGetPartW didn't return S_OK
path.c:87: Test failed: Strings didn't match between ascii and unicode UrlGetPar
t!
path.c:92: Test failed: Expected 21, but got x#9786;ö
fixme:shell:URL_ParseUrl failed to parse Lhttp://foo:bar@localhost:21/internal.
php?query=xreturn=y
path.c:81: Test failed: UrlGetPartA didn't return S_OK
fixme:shell:URL_ParseUrl failed to parse Lhttp://foo:bar@localhost:21/internal.
php?query=xreturn=y
path.c:83: Test failed: UrlGetPartW didn't return S_OK
path.c:87: Test failed: Strings didn't match between ascii and unicode UrlGetPar
t!
path.c:92: Test failed: Expected foo, but got x#9786;ö
fixme:shell:URL_ParseUrl failed to parse Lhttp://foo:bar@localhost:21/internal.
php?query=xreturn=y
path.c:81: Test failed: UrlGetPartA didn't return S_OK
fixme:shell:URL_ParseUrl failed to parse Lhttp://foo:bar@localhost:21/internal.
php?query=xreturn=y
path.c:83: Test failed: UrlGetPartW didn't return S_OK
path.c:87: Test failed: Strings didn't match between ascii and unicode UrlGetPar
t!
path.c:92: Test failed: Expected bar, but got x#9786;ö
fixme:shell:URL_ParseUrl failed to parse Lhttp://foo:bar@localhost:21/internal.
php?query=xreturn=y
path.c:81: Test failed: UrlGetPartA didn't return S_OK
fixme:shell:URL_ParseUrl failed to parse Lhttp://foo:bar@localhost:21/internal.
php?query=xreturn=y
path.c:83: Test failed: UrlGetPartW didn't return S_OK
path.c:87: Test failed: Strings didn't match between ascii and unicode UrlGetPar
t!
path.c:92: Test failed: Expected http, but got x#9786;ö
fixme:shell:URL_ParseUrl failed to parse Lhttp://foo:bar@localhost:21/internal.
php?query=xreturn=y
path.c:81: Test failed: UrlGetPartA didn't return S_OK
fixme:shell:URL_ParseUrl failed to parse Lhttp://foo:bar@localhost:21/internal.
php?query=xreturn=y
path.c:83: Test failed: UrlGetPartW didn't return S_OK
path.c:87: Test failed: Strings didn't match between ascii and unicode UrlGetPar
t!
path.c:92: Test failed: Expected ?query=xreturn=y, but got x#9786;ö
path: 33 tests executed, 0 marked as todo, 24 failures.

C:\Documents and Settings\Administrator\Desktop\test

C:\Documents and Settings\Administrator\Desktop\testshlwapi_test.exe shreg
shreg.c:171: Test failed: (44,43)
shreg.c:195: Test failed: (44,43)
shreg.c:205: Test failed: ()
shreg.c:206: Test failed: ()
shreg.c:207: Test failed: (44,43)
shreg.c:218: Test failed: (44,43)
shreg.c:262: Test failed: didn't open copy
shreg: 37 tests executed, 0 marked as todo, 7 failures.

C:\Documents and Settings\Administrator\Desktop\test




__
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com