diff --git a/screen.changes b/screen.changes index b9c3359..b9e9227 100644 --- a/screen.changes +++ b/screen.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Wed Aug 8 19:56:19 CEST 2012 - mls@suse.de + +- fix crash when doing 'screen -d -r' inside of screen + ------------------------------------------------------------------- Tue Aug 7 17:08:55 CEST 2012 - mls@suse.de diff --git a/screen.spec b/screen.spec index 994efa1..b5bbf46 100644 --- a/screen.spec +++ b/screen.spec @@ -41,6 +41,7 @@ Patch4: term_too_long.diff Patch5: sort_command.patch Patch6: libtinfo.diff Patch7: mappedcmd.diff +Patch8: styroptcrash.diff BuildRoot: %{_tmppath}/%{name}-%{version}-build %description @@ -60,6 +61,7 @@ Documentation: man page %patch5 %patch6 %patch7 -p2 +%patch8 -p2 %build CFLAGS="-DMAXWIN=1000 $RPM_OPT_FLAGS" %configure --prefix=/usr --infodir=%{_infodir} \ diff --git a/styroptcrash.diff b/styroptcrash.diff new file mode 100644 index 0000000..6d42612 --- /dev/null +++ b/styroptcrash.diff @@ -0,0 +1,19 @@ +commit c64f800e7b197e14433ac97be12f32385a27a04f +Author: Michael Schroeder +Date: Wed Aug 8 19:54:11 2012 +0200 + + extend commit #8c1b8e45, which fixed -x but forgot about -r + +diff --git a/src/screen.c b/src/screen.c +index 949df01..6e19732 100644 +--- a/src/screen.c ++++ b/src/screen.c +@@ -988,7 +988,7 @@ char **av; + Panic(0, "$HOME too long - sorry."); + + attach_tty = ""; +- if (!detached && !lsflag && !cmdflag && !(dflag && !mflag && !rflag && !xflag) && !(!mflag && !SockMatch && sty && !xflag)) ++ if (!detached && !lsflag && !cmdflag && !(dflag && !mflag && !rflag && !xflag) && !(sty && !SockMatch && !mflag && !rflag && !xflag)) + { + #ifndef NAMEDPIPE + int fl;