Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 8 Oct 1999 09:26:40 +0200
From:      Philipp Mergenthaler <un1i@rz.uni-karlsruhe.de>
To:        marcel@scc.nl
Cc:        freebsd-current@freebsd.org
Subject:   Make world broken in doscmd; patch
Message-ID:  <19991008092640.A2499@rz.uni-karlsruhe.de>

next in thread | raw e-mail | index | archive | help
 Hi,

the change in src/sys/i386/include/ucontext.h  (in struct __mcontext),
where "struct  trapframe mc_tf;" was replaced by it's members
broke doscmd.

(The relevant files are
$FreeBSD: src/sys/i386/include/ucontext.h,v 1.3 1999/10/07 12:40:34 marcel Exp $
$FreeBSD: src/usr.bin/doscmd/signal.c,v 1.5 1999/09/29 20:09:18 marcel Exp $
$FreeBSD: src/usr.bin/doscmd/trap.c,v 1.6 1999/09/29 20:09:19 marcel Exp $
)

The following patch should fix it.

Bye, Philipp
-- 
http://www.uni-karlsruhe.de/~un1i/



diff -u doscmd.orig/signal.c doscmd/signal.c
--- doscmd.orig/signal.c	Thu Sep 30 21:26:37 1999
+++ doscmd/signal.c	Fri Oct  8 08:58:32 1999
@@ -66,7 +66,7 @@
 static void
 generichandler(struct sigframe sf)
 {
-    if (sf.sf_uc.uc_mcontext.mc_tf.tf_eflags & PSL_VM) {
+    if (sf.sf_uc.uc_mcontext.mc_eflags & PSL_VM) {
 	saved_sigframe = &sf;
 	saved_regcontext = (regcontext_t *)&(sf.sf_uc.uc_mcontext);
 	saved_valid = 1;
diff -u doscmd.orig/trap.c doscmd/trap.c
--- doscmd.orig/trap.c	Thu Sep 30 21:26:37 1999
+++ doscmd/trap.c	Fri Oct  8 08:59:11 1999
@@ -296,8 +296,8 @@
 
     if ((int)sf->sf_siginfo != 0) {
         fatal("SIGBUS code %d, trapno: %d, err: %d\n",
-	    (int)sf->sf_siginfo, sf->sf_uc.uc_mcontext.mc_tf.tf_trapno, 
-	    sf->sf_uc.uc_mcontext.mc_tf.tf_err);
+	    (int)sf->sf_siginfo, sf->sf_uc.uc_mcontext.mc_trapno, 
+	    sf->sf_uc.uc_mcontext.mc_err);
     }
 
     addr = (u_char *)MAKEPTR(R_CS, R_IP);


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19991008092640.A2499>