Don't crash on /ps @ x86_64 (#743468)

This commit is contained in:
Petr Sabata 2011-10-12 16:17:34 +02:00
parent 11960a0cf6
commit 95dc212e0a
2 changed files with 37 additions and 1 deletions

30
tf-50b8.x86_64.patch Normal file
View File

@ -0,0 +1,30 @@
diff -U5 -r tf-50b8.orig/src/tfio.c tf-50b8/src/tfio.c
--- tf-50b8.orig/src/tfio.c 2007-01-13 18:12:39.000000000 -0500
+++ tf-50b8/src/tfio.c 2007-02-02 16:50:12.000000000 -0500
@@ -495,10 +495,11 @@
const char *q, *sval;
char *specptr, quote;
const conString *Sval;
int len, min, max, leftjust, stars;
attr_t attrs = buf->attrs;
+ va_list aq;
if (!(flags & SP_APPEND) && buf->data) Stringtrunc(buf, 0);
while (*fmt) {
if (*fmt != '%' || *++fmt == '%') {
for (q = fmt + 1; *q && *q != '%'; q++);
@@ -520,11 +521,13 @@
switch (*fmt) {
case 'd': case 'i':
case 'x': case 'X': case 'u': case 'o':
case 'f': case 'e': case 'E': case 'g': case 'G':
case 'p':
- vsprintf(tempbuf, spec, ap);
+ va_copy(aq, ap);
+ vsprintf(tempbuf, spec, aq);
+ va_end(aq);
Stringcat(buf, tempbuf);
/* eat the arguments used by vsprintf() */
while (stars--) (void)va_arg(ap, int);
switch (*fmt) {
case 'd': case 'i':

View File

@ -2,7 +2,7 @@
Name: tinyfugue
Version: 5.0
Release: 0.14.b8%{?dist}
Release: 0.15.b8%{?dist}
Summary: A MU* client
Group: Applications/Internet
@ -10,6 +10,7 @@ License: GPLv2+
URL: http://tinyfugue.sourceforge.net/
Source: http://downloads.sourceforge.net/tinyfugue/tf-%{packageversion}.tar.gz
Patch0: tf-50b7.build.patch
Patch1: tf-50b8.x86_64.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: ncurses-devel
@ -25,6 +26,8 @@ macros, and create hooks and triggers for automated responses to game messages.
%setup -q -n tf-%{packageversion}
# TinyFugue's build system is abysmal. Kluge it to honor $DESTDIR
%patch0 -p1
# x86_64 fix (#743468)
%patch1 -p1
%build
%configure --enable-core
@ -47,6 +50,9 @@ rm -rf %{buildroot}
%{_mandir}/man1/tf.1*
%changelog
* Wed Oct 12 2011 Petr Sabata <contyk@redhat.com> - 5.0-0.15.b8
- Don't crash on /ps @ x86_64 (#743468)
* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.0-0.14.b8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild