Hello community, here is the log from the commit of package 7kaa for openSUSE:Factory checked in at 2015-10-06 13:24:40 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/7kaa (Old) and /work/SRC/openSUSE:Factory/.7kaa.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "7kaa" Changes: -------- --- /work/SRC/openSUSE:Factory/7kaa/7kaa.changes 2014-11-11 01:11:14.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.7kaa.new/7kaa.changes 2015-10-06 13:24:44.000000000 +0200 @@ -1,0 +2,28 @@ +Tue Sep 29 15:06:37 UTC 2015 - opens...@dstoecker.de + +- patch buffer overflow (7kaa-2.14.5_overflow.patch) + +------------------------------------------------------------------- +Fri Sep 25 18:32:04 UTC 2015 - nemy...@opensuse.org + +- Update to 2.14.5, announce message: + + * Switched to using SDL2. + * Gained support for full-screen stretching. + * Gained support for MacOS. + * Switched to using enet, replacing SDL_net. + * Audio code improvements. + * The multiplayer connection code has stablized. + * New game hotkeys. + * Migrate population across extended town networks. + * Added ability to migrate 10 people at a time across between towns. + * Gettext translation support. + * Several bug fixes. + +- Add patch 7kaa-2.14.5.patch, - fix build +- Remove BuildRequires for desktop-file-utils +- Add BuildRequires, changed by Upstream for enet-devel and sdl2 +- Remove BuildRequires, changed by Upstream for SDL_net and sdl +- Fix build with gcc5, add CXXFLAGS="%{optflags} -fno-strict-aliasing" + +------------------------------------------------------------------- Old: ---- 7kaa-source-2.14.4.tar.bz2 New: ---- 7kaa-2.14.5.patch 7kaa-2.14.5.tar.bz2 7kaa-2.14.5_overflow.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ 7kaa.spec ++++++ --- /var/tmp/diff_new_pack.HujgLE/_old 2015-10-06 13:24:46.000000000 +0200 +++ /var/tmp/diff_new_pack.HujgLE/_new 2015-10-06 13:24:46.000000000 +0200 @@ -1,7 +1,7 @@ # # spec file for package 7kaa # -# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -19,25 +19,29 @@ # See also http://en.opensuse.org/openSUSE:Specfile_guidelines Name: 7kaa -Version: 2.14.4 +Version: 2.14.5 Release: 0 Summary: Seven Kingdoms: Ancient Adversaries License: GPL-2.0 Group: Amusements/Games/StrategyGame Url: http://7kfans.com/ -Source0: http://sourceforge.net/projects/skfans/files/7KAA%20%{version}/%{name}-source-%{version}.tar.bz2 +Source0: http://sourceforge.net/projects/skfans/files/7KAA%20%{version}/%{name}-%{version}.tar.bz2 +# PATCH-FIX-OPENSUSE - 7kaa-2.14.5.patch -- https://github.com/the3dfxdude/7kaa/issues/48 +Patch0: %{name}-2.14.5.patch +# PATCH-FIX-UPSTREAM - patch buffer overflow due to wrong size assumptions +Patch1: %{name}-2.14.5_overflow.patch Source1: %{name}.png Source2: %{name}.desktop %if 0%{?suse_version} -BuildRequires: desktop-file-utils BuildRequires: fdupes BuildRequires: update-desktop-files %endif +BuildRequires: enet-devel BuildRequires: gcc-c++ BuildRequires: openal-soft-devel -BuildRequires: pkgconfig(SDL_net) -BuildRequires: pkgconfig(sdl) +BuildRequires: pkgconfig(sdl2) Recommends: %{name}-music +BuildRoot: %{_tmppath}/%{name}-%{version}-build %description Seven Kingdoms made departures from the traditional real-time strategy models @@ -58,8 +62,11 @@ %prep %setup -q +%patch0 -p1 +%patch1 -p1 %build +export CXXFLAGS="%{optflags} -fno-strict-aliasing" %configure --docdir=%{_docdir}/%{name} make %{?_smp_mflags} @@ -73,12 +80,12 @@ install -Dm 0644 %{S:2} %{buildroot}%{_datadir}/applications/%{name}.desktop %if 0%{?suse_version} -%suse_update_desktop_file %{name} -%fdupes %{buildroot}%{_prefix} + %suse_update_desktop_file %{name} + %fdupes -s %{buildroot}%{_prefix} %endif %files -%defattr(-,root,root,-) +%defattr(-,root,root) %doc COPYING README %{_bindir}/%{name} %{_datadir}/applications/%{name}.desktop ++++++ 7kaa-2.14.5.patch ++++++ diff -ruB 7kaa-2.14.5.orig/src/client/OFIRMIF.cpp 7kaa-2.14.5/src/client/OFIRMIF.cpp --- 7kaa-2.14.5.orig/src/client/OFIRMIF.cpp 2015-05-19 03:00:20.000000000 +0200 +++ 7kaa-2.14.5/src/client/OFIRMIF.cpp 2015-09-25 16:23:43.405735779 +0200 @@ -491,7 +491,7 @@ x = INFO_X1+6+i%4*50; y = pop_disp_y1+1+i/4*29; - switch( mouse.single_click(x, y, x+27, y+23, 2) ) + switch( mouse.any_click(x, y, x+27, y+23, LEFT_BUTTON) ? 1 : (mouse.any_click(x, y, x+27, y+23, RIGHT_BUTTON) ? 2 : 0) ) { case 1: // left button to select worker selected_worker_id = i+1; diff -ruB 7kaa-2.14.5.orig/src/client/OF_BASE.cpp 7kaa-2.14.5/src/client/OF_BASE.cpp --- 7kaa-2.14.5.orig/src/client/OF_BASE.cpp 2015-05-19 03:00:20.000000000 +0200 +++ 7kaa-2.14.5/src/client/OF_BASE.cpp 2015-09-25 17:05:59.616753330 +0200 @@ -238,8 +238,8 @@ //------ detect the overseer button -----// - int rc = mouse.single_click(INFO_X1+6, INFO_Y1+58, - INFO_X1+5+UNIT_LARGE_ICON_WIDTH, INFO_Y1+57+UNIT_LARGE_ICON_HEIGHT, 2 ); + int rc = mouse.any_click(INFO_X1+6, INFO_Y1+58, INFO_X1+5+UNIT_LARGE_ICON_WIDTH, INFO_Y1+57+UNIT_LARGE_ICON_HEIGHT, LEFT_BUTTON) ? 1 + : mouse.any_click(INFO_X1+6, INFO_Y1+58, INFO_X1+5+UNIT_LARGE_ICON_WIDTH, INFO_Y1+57+UNIT_LARGE_ICON_HEIGHT, RIGHT_BUTTON) ? 2 : 0; if( rc==1 ) // display this overseer's info { diff -ruB 7kaa-2.14.5.orig/src/client/OF_CAMP.cpp 7kaa-2.14.5/src/client/OF_CAMP.cpp --- 7kaa-2.14.5.orig/src/client/OF_CAMP.cpp 2015-05-19 03:00:20.000000000 +0200 +++ 7kaa-2.14.5/src/client/OF_CAMP.cpp 2015-09-25 17:07:32.962237653 +0200 @@ -421,8 +421,8 @@ //------ detect the overseer button -----// - int rc = mouse.single_click(INFO_X1+6, INFO_Y1+58, - INFO_X1+5+UNIT_LARGE_ICON_WIDTH, INFO_Y1+57+UNIT_LARGE_ICON_HEIGHT, 2 ); + int rc = mouse.any_click(INFO_X1+6, INFO_Y1+58, INFO_X1+5+UNIT_LARGE_ICON_WIDTH, INFO_Y1+57+UNIT_LARGE_ICON_HEIGHT, LEFT_BUTTON) ? 1 + : mouse.any_click(INFO_X1+6, INFO_Y1+58, INFO_X1+5+UNIT_LARGE_ICON_WIDTH, INFO_Y1+57+UNIT_LARGE_ICON_HEIGHT, RIGHT_BUTTON) ? 2 : 0; if( rc==1 ) // display this overseer's info { diff -ruB 7kaa-2.14.5.orig/src/client/OF_MARK.cpp 7kaa-2.14.5/src/client/OF_MARK.cpp --- 7kaa-2.14.5.orig/src/client/OF_MARK.cpp 2015-05-19 03:00:20.000000000 +0200 +++ 7kaa-2.14.5/src/client/OF_MARK.cpp 2015-09-25 16:22:12.651232950 +0200 @@ -814,7 +814,7 @@ } else { - market_product_array[marketGoods->raw_id-1] = NULL; + market_product_array[marketGoods->product_raw_id-1] = NULL; marketGoods->product_raw_id = 0; } } diff -ruB 7kaa-2.14.5.orig/src/client/OVOLUME.cpp 7kaa-2.14.5/src/client/OVOLUME.cpp --- 7kaa-2.14.5.orig/src/client/OVOLUME.cpp 2015-05-19 03:00:20.000000000 +0200 +++ 7kaa-2.14.5/src/client/OVOLUME.cpp 2015-09-25 16:24:29.805481641 +0200 @@ -70,7 +70,7 @@ long absY = posVolume.y >= 0 ? posVolume.y : -posVolume.y; long dist = absX >= absY ? absX :absY; if( dist <= DEFAULT_DIST_LIMIT ) - rel_vol = rel_vol = 100 - dist * 100 / DEFAULT_VOL_DROP; + rel_vol = 100 - dist * 100 / DEFAULT_VOL_DROP; else rel_vol = 0; ++++++ 7kaa-source-2.14.4.tar.bz2 -> 7kaa-2.14.5.tar.bz2 ++++++ /work/SRC/openSUSE:Factory/7kaa/7kaa-source-2.14.4.tar.bz2 /work/SRC/openSUSE:Factory/.7kaa.new/7kaa-2.14.5.tar.bz2 differ: char 11, line 1 ++++++ 7kaa-2.14.5_overflow.patch ++++++ diff -ur 7kaa-2.14.5/src/client/OGAMEMP.cpp 7kaa-2.14.5_fix/src/client/OGAMEMP.cpp --- 7kaa-2.14.5/src/client/OGAMEMP.cpp 2015-05-19 03:00:20.000000000 +0200 +++ 7kaa-2.14.5_fix/src/client/OGAMEMP.cpp 2015-09-29 17:05:01.007513932 +0200 @@ -4966,7 +4966,7 @@ String str; snprintf(str, - 255, + MAX_STR_LEN+1, ngettext("This multiplayer saved game needs %d human players while now there is only %d human player.", "This multiplayer saved game needs %d human players while now there are only %d human players.", regPlayerCount), @@ -5123,7 +5123,7 @@ String str; snprintf(str, - 255, + MAX_STR_LEN+1, ngettext("This multiplayer saved game needs %d human players while now there is only %d human player.", "This multiplayer saved game needs %d human players while now there are only %d human players.", playerCount), @@ -5141,7 +5141,7 @@ { String str; - snprintf(str, 255, _("This multiplayer saved game can only support %d human players while now there are %d human players. The game cannot start."), maxPlayer, playerCount); + snprintf(str, MAX_STR_LEN+1, _("This multiplayer saved game can only support %d human players while now there are %d human players. The game cannot start."), maxPlayer, playerCount); box.msg(str); return 0;