Package: holotz-castle
Version: 1.3.4-1
Severity: normal
Tags: patch

When building 'holotz-castle' on amd64/unstable with gcc-4.0,
I get the following error:

g++ -I. -O3 -ffast-math  -c -o JLib/Util/JUtil.o JLib/Util/JUtil.cpp
JLib/Util/JUtil.cpp: In function 'JVideoMode* JListVideoModes(s32*, s32)':
JLib/Util/JUtil.cpp:142: error: cast from 'SDL_Rect**' to 's32' loses precision
JLib/Util/JUtil.cpp:142: error: cast from 'SDL_Rect**' to 's32' loses precision
make[3]: *** [JLib/Util/JUtil.o] Error 1
make[3]: Leaving directory `/holotz-castle-1.3.4/JLib'

With the attached patch 'holotz-castle' can be compiled
on amd64 using gcc-4.0.

Regards
Andreas Jochens

diff -urN ../tmp-orig/holotz-castle-1.3.4/JLib/JLib/Util/JUtil.cpp 
./JLib/JLib/Util/JUtil.cpp
--- ../tmp-orig/holotz-castle-1.3.4/JLib/JLib/Util/JUtil.cpp    2005-03-31 
22:40:42.000000000 +0200
+++ ./JLib/JLib/Util/JUtil.cpp  2005-04-10 10:43:45.540165081 +0200
@@ -139,7 +139,7 @@
        
        // Busca los modos de v�deo sin aceleraci�n para la profundidad actual 
y comprueba para el resto de profundidades
        modeList = SDL_ListModes(0, SDL_FULLSCREEN);
-       if ((s32)modeList == 0 || (s32)modeList == -1)
+       if ((long)modeList == 0 || (long)modeList == -1)
        {
                return 0;
        }
diff -urN ../tmp-orig/holotz-castle-1.3.4/JLib/Makefile ./JLib/Makefile
--- ../tmp-orig/holotz-castle-1.3.4/JLib/Makefile       2005-03-31 
22:40:42.000000000 +0200
+++ ./JLib/Makefile     2005-04-10 10:45:36.477698339 +0200
@@ -15,7 +15,7 @@
                                        $(UTIL)/JApp.o $(UTIL)/JFS.o 
$(UTIL)/JThread.o $(MATH)/J2DPolygon.o
 
 # Definir -D_JLIB_DEBUG para hacer debug de JLib. Compilar el programa a 
debugear tambi�n con este flag
-CFLAGS=-I. -O3 -ffast-math $(CPU_OPTS)
+CFLAGS=-I. -O3 -ffast-math $(CPU_OPTS) -fPIC
 LDFLAGS=-L. -ffast-math -lSDL -lSDL_image -lSDL_ttf -lSDL_mixer
 
 all: libJLib
diff -urN ../tmp-orig/holotz-castle-1.3.4/src/HCed.cpp ./src/HCed.cpp
--- ../tmp-orig/holotz-castle-1.3.4/src/HCed.cpp        2005-03-31 
22:40:43.000000000 +0200
+++ ./src/HCed.cpp      2005-04-10 10:48:13.420330441 +0200
@@ -2790,7 +2790,7 @@
 
 void HCed::OnSelectStory(void *data)
 {
-       if ((s32)data < 0)
+       if ((long)data < 0)
        {
                theApp->inputNewStory = HCED_INPUT_STORY;
 
@@ -2803,7 +2803,7 @@
        else
        {
                theApp->OnFloor(0);
-               theApp->filename = JString(theApp->storyDir) + 
JString(HCUtil::Stories()[(s32)data]) + "/level001.hlv";
+               theApp->filename = JString(theApp->storyDir) + 
JString(HCUtil::Stories()[(long)data]) + "/level001.hlv";
                
                if (0 != theApp->NewLevel())
                {
@@ -2811,7 +2811,7 @@
                        return;
                }
                
-               theApp->storyName = HCUtil::Stories()[(s32)data];
+               theApp->storyName = HCUtil::Stories()[(long)data];
                theApp->levelNumber = 1;
        }
 }
@@ -2829,7 +2829,7 @@
                        JString oldTheme = theApp->themeName;
                        s32 oldLevel = theApp->levelNumber;
                        theApp->filename = JString(theApp->storyDir) + 
JString(theApp->strNewStoryName) + JString("/level001.hlv");
-                       theApp->themeName = HCUtil::Themes()[(s32)data];
+                       theApp->themeName = HCUtil::Themes()[(long)data];
                        theApp->levelNumber = 1;
                                                
                        if (0 != theApp->NewLevel())
@@ -2866,60 +2866,60 @@
 
 void HCed::OnMainSubtype(void *data)
 {
-       theApp->level.character.subtype = (s32)data;
-       theApp->level.character.Init(theApp->level.theme.MainChar((s32)data), 
&theApp->level.map);
+       theApp->level.character.subtype = (long)data;
+       theApp->level.character.Init(theApp->level.theme.MainChar((long)data), 
&theApp->level.map);
 }
 
 void HCed::OnFloorSubtype(void *data)
 {
-       theApp->floorSubtype = (s32)data;
+       theApp->floorSubtype = (long)data;
        theApp->imgMouse = &(theApp->level.Theme().Floor(theApp->floorSubtype));
 }
 
 void HCed::OnContFloorSubtype(void *data)
 {
-       theApp->contFloorSubtype = (s32)data;
+       theApp->contFloorSubtype = (long)data;
        theApp->imgMouse = 
&(theApp->level.Theme().ContFloor(theApp->contFloorSubtype)[HCFDT_I]);
 }
 
 void HCed::OnBarSubtype(void *data)
 {
-       theApp->barSubtype = (s32)data;
+       theApp->barSubtype = (long)data;
        theApp->imgMouse = &(theApp->level.Theme().Bar(theApp->barSubtype));
 }
 
 void HCed::OnLadderSubtype(void *data)
 {
-       theApp->ladderSubtype = (s32)data;
+       theApp->ladderSubtype = (long)data;
        theApp->imgMouse = 
&(theApp->level.Theme().Ladder(theApp->ladderSubtype));
 }
 
 void HCed::OnBreakSubtype(void *data)
 {
-       theApp->breakSubtype = (s32)data;
+       theApp->breakSubtype = (long)data;
        theApp->imgMouse = (JImage 
*)(theApp->level.Theme().Break(theApp->breakSubtype)[HCBDT_NORMAL].Frame(0));
 }
 
 void HCed::OnObjectSubtype(void *data)
 {
-       theApp->objectSubtype = (s32)data;
+       theApp->objectSubtype = (long)data;
        theApp->imgMouse = (JImage 
*)(theApp->level.Theme().Object(theApp->objectSubtype)[HCODT_NORMAL].Frame(0));
 }
 
 void HCed::OnRopeSubtype(void *data)
 {
-       theApp->ropeSubtype = (s32)data;
+       theApp->ropeSubtype = (long)data;
        theApp->imgMouse = 
&(theApp->level.Theme().Rope(theApp->ropeSubtype)[HCRDT_TOP]);
 }
 
 void HCed::OnRopePeriod(void *data)
 {
-       theApp->ropePeriod = 0.5f + (0.25f * float((s32)data));
+       theApp->ropePeriod = 0.5f + (0.25f * float((long)data));
 }
 
 void HCed::OnEnemySubtype(void *data)
 {
-       theApp->enemySubtype = (s32)data;
+       theApp->enemySubtype = (long)data;
        theApp->imgMouse = (JImage 
*)(theApp->GetEnemySprites(theApp->enemyType, 
theApp->enemySubtype)[HCCDT_STOP].Frame(0));
 }
 
@@ -2928,18 +2928,18 @@
        // 0 always is a valid subtype so init to that
        theApp->enemySubtype = 0;
 
-       theApp->enemyType = (HCEnemyType)(s32)data;
+       theApp->enemyType = (HCEnemyType)(long)data;
        theApp->imgMouse = (JImage 
*)(theApp->GetEnemySprites(theApp->enemyType, 
theApp->enemySubtype)[HCCDT_STOP].Frame(0));
 }
 
 void HCed::OnEnemyParam1(void *data)
 {
-       theApp->enemyParam1 = (s32)data;
+       theApp->enemyParam1 = (long)data;
 }
 
 void HCed::OnEnemyParam2(void *data)
 {
-       theApp->enemyParam2 = (s32)data;
+       theApp->enemyParam2 = (long)data;
 }
 
 bool HCed::MouseOverMap()
diff -urN ../tmp-orig/holotz-castle-1.3.4/src/HolotzCastle.cpp 
./src/HolotzCastle.cpp
--- ../tmp-orig/holotz-castle-1.3.4/src/HolotzCastle.cpp        2005-03-31 
22:40:43.000000000 +0200
+++ ./src/HolotzCastle.cpp      2005-04-10 10:46:57.689983885 +0200
@@ -256,9 +256,9 @@
        }
 
        if (JFont::Init() &&
-                       fontSmall.Open(HC_DATA_DIR "font/font.ttf", 
(s32)JMax(11, height/35)) &&
-                       fontMedium.Open(HC_DATA_DIR "font/font.ttf", 
(s32)JMax(12, height/30)) &&
-                       fontLarge.Open(HC_DATA_DIR "font/font.ttf", 
(s32)JMax(13, height/25)))
+                       fontSmall.Open(HC_DATA_DIR "font/font.ttf", 
(long)JMax(11, height/35)) &&
+                       fontMedium.Open(HC_DATA_DIR "font/font.ttf", 
(long)JMax(12, height/30)) &&
+                       fontLarge.Open(HC_DATA_DIR "font/font.ttf", 
(long)JMax(13, height/25)))
        {
                level.SetTimerFont(&fontLarge);
                return true;
@@ -925,7 +925,7 @@
 
 void HCApp::OnDifficulty(void *data)
 {
-       HCPreferences::Prefs()->Difficulty((s32)data);
+       HCPreferences::Prefs()->Difficulty((long)data);
        HCPreferences::Prefs()->Save();
        theApp->menu->Menu()->Root();
 }
@@ -933,9 +933,9 @@
 void HCApp::OnSound(void *data)
 {
        HCApp *a = (HCApp *)App();
-       a->SoundEnabled(0 != (s32)data);
+       a->SoundEnabled(0 != (long)data);
 
-       if (0 != (s32)data)
+       if (0 != (long)data)
        {
                if (a->SoundEnabled())
                {
@@ -960,7 +960,7 @@
 
 void HCApp::OnNew(void *data)
 {
-       if (theApp->playlist.GoTo(theApp->playlist[(s32)data]))
+       if (theApp->playlist.GoTo(theApp->playlist[(long)data]))
        {
                theApp->levelNumber = 1;
                theApp->State(HCS_PLAYING);
@@ -981,10 +981,10 @@
 void HCApp::OnVideoMode(void *data)
 {
        HCApp *a = (HCApp *)App();
-       a->preferences.VideoMode((s32)data);
+       a->preferences.VideoMode((long)data);
        a->preferences.Save();
-       App()->Resize(a->preferences.VideoModes()[(s32)data].w, 
-                                                               
a->preferences.VideoModes()[(s32)data].h, 
+       App()->Resize(a->preferences.VideoModes()[(long)data].w, 
+                                                               
a->preferences.VideoModes()[(long)data].h, 
                                                                
a->preferences.Fullscreen());
        a->State(HCS_MENU);
 }
@@ -992,9 +992,9 @@
 void HCApp::OnBPP(void *data)
 {
        HCApp *a = (HCApp *)App();
-       a->preferences.BPP((s32)data);
+       a->preferences.BPP((long)data);
        a->preferences.Save();
-       a->depth = (s32)data;
+       a->depth = (long)data;
        
App()->Resize(a->preferences.VideoModes()[a->preferences.VideoMode()].w, 
                                                                
a->preferences.VideoModes()[a->preferences.VideoMode()].h,
                                                                
a->preferences.Fullscreen());
@@ -1004,7 +1004,7 @@
 void HCApp::OnWindowMode(void *data)
 {
        HCApp *a = (HCApp *)App();
-       a->preferences.Fullscreen((s32)data);
+       a->preferences.Fullscreen((long)data);
        a->preferences.Save();
        
App()->Resize(a->preferences.VideoModes()[a->preferences.VideoMode()].w, 
                                                                
a->preferences.VideoModes()[a->preferences.VideoMode()].h,
@@ -1015,7 +1015,7 @@
 void HCApp::OnLanguage(void *data)
 {
        HCApp *a = (HCApp *)App();
-       a->preferences.CurLang((s32)data);
+       a->preferences.CurLang((long)data);
        a->preferences.Save();
        a->State(HCS_MENU);
 }
@@ -1025,8 +1025,8 @@
        HCApp *a = (HCApp *)App();
        a->preferences.Reset();
        a->preferences.Save();
-       App()->Resize(a->preferences.VideoModes()[(s32)data].w, 
-                                                               
a->preferences.VideoModes()[(s32)data].h, 
+       App()->Resize(a->preferences.VideoModes()[(long)data].w, 
+                                                               
a->preferences.VideoModes()[(long)data].h, 
                                                                
a->preferences.Fullscreen());
        a->State(HCS_MENU);
 }
@@ -1034,9 +1034,9 @@
 void HCApp::OnLoad(void *data)
 {
        HCApp *app = (HCApp *)App();
-       if (app->playlist.GoTo(app->saveData[(s32)data].Story()))
+       if (app->playlist.GoTo(app->saveData[(long)data].Story()))
        {
-               app->levelNumber = app->saveData[(s32)data].Level();
+               app->levelNumber = app->saveData[(long)data].Level();
                app->State(HCS_PLAYING);
        }
 }
@@ -1044,7 +1044,7 @@
 void HCApp::OnSave(void *data)
 {
        HCApp *app = (HCApp *)App();
-       if (app->saveData[(s32)data].Save((s32)data, app->playlist.StoryName(), 
app->levelNumber))
+       if (app->saveData[(long)data].Save((long)data, 
app->playlist.StoryName(), app->levelNumber))
        {
                app->State(HCS_MENU);
        }


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to