From owner-freebsd-emulation Wed Feb 18 14:43:06 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id OAA03161 for freebsd-emulation-outgoing; Wed, 18 Feb 1998 14:43:06 -0800 (PST) (envelope-from owner-freebsd-emulation@FreeBSD.ORG) Received: from watermarkgroup.com (lor.watermarkgroup.com [207.202.73.33]) by hub.freebsd.org (8.8.8/8.8.8) with SMTP id OAA03103 for ; Wed, 18 Feb 1998 14:42:53 -0800 (PST) (envelope-from luoqi@watermarkgroup.com) Received: by watermarkgroup.com (4.1/SMI-4.1) id AA12541; Wed, 18 Feb 98 15:06:08 EST Date: Wed, 18 Feb 98 15:06:08 EST From: luoqi@watermarkgroup.com (Luoqi Chen) Message-Id: <9802182006.AA12541@watermarkgroup.com> To: Studded@san.rr.com Subject: Re: wine 980215 Cc: emulation@FreeBSD.ORG Sender: owner-freebsd-emulation@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org > Luoqi Chen wrote: > > > > I guess no one paid any attention to my previous post several days ago > > regarding this problem. The cause of the crash was that wine expected > > fs to be the same as ds initially, but this is not the case on FreeBSD. > > Fs is set to cs instead. There are two solutions. > > 1. Set fs to ds in the kernel, > > 2. Initialize fs to ds at the very beginning of wine, before any call > > to the scheduler module. > > I not only paid attention, I saved it. :) But I don't know how to do > what you're talking about here... do you have a patch for the wine > sources? > > Doug > > -- > *** Chief Operations Officer, DALnet IRC network *** > *** Proud operator, designer and maintainer of the world's largest > *** Internet Relay Chat server. 5,328 clients and still growing. > *** Try spider.dal.net on ports 6662-4 (Powered by FreeBSD) > Here's the patch. The diff was taken against win980201, I don't have the most recent wine980215. ------------CUT HERE----------- --- misc/main.c.orig Sun Feb 1 13:17:51 1998 +++ misc/main.c Fri Feb 6 03:56:28 1998 @@ -34,6 +34,7 @@ #include "debug.h" #include "xmalloc.h" #include "version.h" +#include "selectors.h" /* SET_FS */ const WINE_LANGUAGE_DEF Languages[] = @@ -547,6 +548,10 @@ fprintf( stderr, "malloc trace goes to %s\n", trace ); mtrace(); } +#endif + +#ifdef __FreeBSD__ + { WORD ds; GET_DS(ds); SET_FS(ds); } #endif setbuf(stdout,NULL); To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-emulation" in the body of the message