[oolite] 08/15: Refresh patches.

Nicolas Boulenguez nicolas.boulenguez at free.fr
Thu Jul 28 23:24:28 UTC 2016


This is an automated email from the git hooks/post-receive script.

nicobou-guest pushed a commit to branch master
in repository oolite.

commit 17a0532d3c43be619fb59e23a8fac6b7a90c664c
Author: Nicolas Boulenguez <nicolas.boulenguez at free.fr>
Date:   Wed Jul 27 16:29:35 2016 +0200

    Refresh patches.
---
 debian/oolite-doc.TODO                             |    2 +-
 debian/patches/avoid_date_cpp_macro.diff           |    2 +-
 ..._infinite_recursion_in_verify_descriptions.diff |   20 -
 debian/patches/fix-glib-cast.patch                 |   15 -
 debian/patches/generate_planet_data.diff           |   31 -
 debian/patches/gnustep_app_builder.diff            |   17 +-
 debian/patches/secure-format-log-string-1.84.diff  |  196 +++
 debian/patches/secure-format-log-string.diff       | 1242 +-------------------
 debian/patches/series                              |    5 +-
 debian/patches/typo.diff                           |   15 -
 10 files changed, 203 insertions(+), 1342 deletions(-)

diff --git a/debian/oolite-doc.TODO b/debian/oolite-doc.TODO
index 2558adf..5ab864a 100644
--- a/debian/oolite-doc.TODO
+++ b/debian/oolite-doc.TODO
@@ -1,4 +1,4 @@
-Forward patches/* (done for 1.77.1-3 on 2013/08/12).
+Forward patches/*.
 
 Check if patches/gnustep_app_builder.diff is stil needed.
 
diff --git a/debian/patches/avoid_date_cpp_macro.diff b/debian/patches/avoid_date_cpp_macro.diff
index ee6c0ca..8ee0c21 100644
--- a/debian/patches/avoid_date_cpp_macro.diff
+++ b/debian/patches/avoid_date_cpp_macro.diff
@@ -9,7 +9,7 @@ Author: Nicolas Boulenguez <nicolas at debian.org>
 
 --- a/src/SDL/MyOpenGLView.m
 +++ b/src/SDL/MyOpenGLView.m
-@@ -195,13 +195,9 @@
+@@ -196,13 +196,9 @@
  
  	[OOSound setUp];
  
diff --git a/debian/patches/avoid_infinite_recursion_in_verify_descriptions.diff b/debian/patches/avoid_infinite_recursion_in_verify_descriptions.diff
deleted file mode 100644
index 67853fa..0000000
--- a/debian/patches/avoid_infinite_recursion_in_verify_descriptions.diff
+++ /dev/null
@@ -1,20 +0,0 @@
-Description: avoid an infinite recursion between VerifyDesc and descriptions.
-Author: Nicolas Boulenguez <nicolas at debian.org>
-Applied-Upstream: https://github.com/OoliteProject/oolite/commit/134b07bc091ec2415fcfed195d479b7f12eda018
-
---- a/src/Core/Universe.m
-+++ b/src/Core/Universe.m
-@@ -7454,11 +7454,10 @@
- 		-- Ahruman 2011-05-05
- 	*/
- 	
--	NSDictionary *descriptions = [self descriptions];
- 	NSString *key = nil;
--	foreachkey (key, descriptions)
-+	foreachkey (key, _descriptions)
- 	{
--		VerifyDesc(key, [descriptions objectForKey:key]);
-+		VerifyDesc(key, [_descriptions objectForKey:key]);
- 	}
- }
- 
diff --git a/debian/patches/fix-glib-cast.patch b/debian/patches/fix-glib-cast.patch
deleted file mode 100644
index 375d4ce..0000000
--- a/debian/patches/fix-glib-cast.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Description: fix glib-2.23 build failure
-Author: Gianfranco Costamagna <locutusofborg at debian.org>
-Bug-Debian: https://bugs.debian.org/818815
-
---- a/src/Core/Scripting/OOJSPlayerShip.m
-+++ b/src/Core/Scripting/OOJSPlayerShip.m
-@@ -1496,7 +1496,7 @@
- 
- 	if (!isCargo)
- 	{
--		if (argc > offset+5 && JS_ValueToECMAUint32(context, OOJS_ARGV[offset + 5], &uValue) && isfinite(uValue))
-+		if (argc > offset+5 && JS_ValueToECMAUint32(context, OOJS_ARGV[offset + 5], &uValue) && isfinite((double)uValue))
- 		{
- 			*risk = uValue;
- 		}
diff --git a/debian/patches/generate_planet_data.diff b/debian/patches/generate_planet_data.diff
deleted file mode 100644
index 46ceb51..0000000
--- a/debian/patches/generate_planet_data.diff
+++ /dev/null
@@ -1,31 +0,0 @@
-Description: GNUmakefile compiling tools/icosmesh
- Whatever the locale, use a dot as decimal separator
- in the produced C code.
-Author: Nicolas Boulenguez <nicolas at debian.org>
-Applied-Upstream: https://github.com/OoliteProject/oolite/commit/d8b75e912031a901e1c9cb5362f05dbc7c256f49
-
---- a/tools/icosmesh/main.m
-+++ b/tools/icosmesh/main.m
-@@ -3,6 +3,7 @@
- 	Tool to generate subdivided icosahedron mesh data.
- */
- 
-+#import <locale.h>
- #import <stdio.h>
- #import "icosmesh.h"
- #import "JAIcosTriangle.h"
-@@ -131,6 +132,14 @@
- 	*/
- 	(void)[NSAutoreleasePool new];
- 	
-+	/* Let printf ignore local number formatting conventions. */
-+	/* For example, use a dot as decimal separator. */
-+	if (setlocale (LC_NUMERIC, "C") == NULL)
-+	{
-+		fprintf(stderr, "Failed to set locale.\n");
-+		return EXIT_FAILURE;
-+	}
-+
- 	FILE *header = fopen(kFileName ".h", "w");
- 	FILE *source = fopen(kFileName ".c", "w");
- 	if (header == NULL || source == NULL)
diff --git a/debian/patches/gnustep_app_builder.diff b/debian/patches/gnustep_app_builder.diff
index 110f061..3210381 100644
--- a/debian/patches/gnustep_app_builder.diff
+++ b/debian/patches/gnustep_app_builder.diff
@@ -24,21 +24,10 @@ Description: use GNUstep application builder
  to different subfolders, so you didn't have to do a "make clean" before
  switching between release and debug builds, and building a debug build
  wouldn't wipe the release executable.
- .
- Even if these changes are refused, please consider replacing
- "ifeq ($(debug),no) $(STRIP)..." with "ifneq ($(debug),yes) $(STRIP)..."
- as an unset debug variable means no.
- Or even better by "ifeq ($(strip),yes) $(STRIP)..." to conform
- to the GNUstep conventions and allow selecting independently
- the stripping policy and the debug level.
- .
- Done, see Applied-Upstream field. Should allow to simplify debian/rules.
-Forwarded: Michael Werle <micha at michaelwerle.com>
-Applied-Upstream: https://github.com/OoliteProject/oolite/commit/622b05a99073c374d4fc93bab82fcead5ecbb069
 
 --- a/GNUmakefile
 +++ b/GNUmakefile
-@@ -137,7 +137,18 @@
+@@ -144,7 +144,18 @@
      ADDITIONAL_OBJCFLAGS         += -DSNAPSHOT_BUILD -DOOLITE_SNAPSHOT_VERSION=\"$(VERSION_STRING)\"
  endif
  
@@ -58,7 +47,7 @@ Applied-Upstream: https://github.com/OoliteProject/oolite/commit/622b05a99073c37
  
  oolite_C_FILES = \
      legacy_random.c \
-@@ -413,5 +424,5 @@
+@@ -424,5 +435,5 @@
      $(OO_UTILITY_FILES) \
      $(OOLITE_MISC_FILES)
  
@@ -123,7 +112,7 @@ Applied-Upstream: https://github.com/OoliteProject/oolite/commit/622b05a99073c37
 +ifeq ($(debug),yes)
 +	mv $(PROGDIR)/$(APP_NAME)$(OS_EXT) $(PROGDIR)/$(APP_NAME).dbg$(OS_EXT)
 +endif
- ifeq ($(debug),no)
+ ifeq ($(strip),yes)
 -	$(STRIP) $(PROGDIR)/$(DEST_BIN)
 +	$(STRIP) $(PROGDIR)/$(APP_NAME)$(OS_EXT)
  endif
diff --git a/debian/patches/secure-format-log-string-1.84.diff b/debian/patches/secure-format-log-string-1.84.diff
new file mode 100644
index 0000000..02b8272
--- /dev/null
+++ b/debian/patches/secure-format-log-string-1.84.diff
@@ -0,0 +1,196 @@
+Description: part of secure-format-log-string.diff new with 1.84
+ These new changes are stored in a different patch for readability.
+Author: Nicolas Boulenguez <nicolas at debian.org>
+
+--- a/src/Core/Universe.m
++++ b/src/Core/Universe.m
+@@ -255,7 +255,7 @@
+ 		[NSException raise:NSInternalInconsistencyException format:@"%s: expected only one Universe to exist at a time.", __PRETTY_FUNCTION__];
+ 	}
+ 	
+-	OO_DEBUG_PROGRESS(@"Universe initWithGameView:");
++	OO_DEBUG_PROGRESS("%@", @"Universe initWithGameView:");
+ 	
+ 	self = [super init];
+ 	if (self == nil)  return nil;
+@@ -941,7 +941,7 @@
+ 	
+ 	sunGoneNova = [systeminfo oo_boolForKey:@"sun_gone_nova" defaultValue:NO];
+ 	
+-	OO_DEBUG_PUSH_PROGRESS(@"setUpSpace - clearSubRegions, sky, dust");
++	OO_DEBUG_PUSH_PROGRESS(@"%@", @"setUpSpace - clearSubRegions, sky, dust");
+ 	[universeRegion clearSubregions];
+ 	
+ 	// fixed entities (part of the graphics system really) come first...
+@@ -1024,7 +1024,7 @@
+ 	
+ 	// actual entities next...
+ 	
+-	OO_DEBUG_PUSH_PROGRESS(@"setUpSpace - planet");
++	OO_DEBUG_PUSH_PROGRESS(@"%@", @"setUpSpace - planet");
+ 	a_planet=[self setUpPlanet]; // resets RNG when called
+ 	double planet_radius = [a_planet radius];
+ 	OO_DEBUG_POP_PROGRESS();
+@@ -1032,7 +1032,7 @@
+ 	// set the system seed for random number generation
+ 	seed_for_planet_description(systemSeed);
+ 	
+-	OO_DEBUG_PUSH_PROGRESS(@"setUpSpace - sun");
++	OO_DEBUG_PUSH_PROGRESS(@"%@", @"setUpSpace - sun");
+ 	/*- space sun -*/
+ 	double		sun_radius;
+ 	double		sun_distance;
+@@ -1139,7 +1139,7 @@
+ 	[self setLighting];
+ 	OO_DEBUG_POP_PROGRESS();
+ 	
+-	OO_DEBUG_PUSH_PROGRESS(@"setUpSpace - main station");
++	OO_DEBUG_PUSH_PROGRESS(@"%@", @"setUpSpace - main station");
+ 	/*- space station -*/
+ 	stationPos = [a_planet position];
+ 
+@@ -1226,7 +1226,7 @@
+ 	OO_DEBUG_POP_PROGRESS();
+ 	
+ 	
+-	OO_DEBUG_PUSH_PROGRESS(@"setUpSpace - populate from wormholes");
++	OO_DEBUG_PUSH_PROGRESS(@"%@", @"setUpSpace - populate from wormholes");
+ 	[self populateSpaceFromActiveWormholes];
+ 	OO_DEBUG_POP_PROGRESS();
+ 
+@@ -1243,7 +1243,7 @@
+ 	// check for nova
+ 	if (sunGoneNova)
+ 	{
+-	 	OO_DEBUG_PUSH_PROGRESS(@"setUpSpace - post-nova");
++	 	OO_DEBUG_PUSH_PROGRESS(@"%@", @"setUpSpace - post-nova");
+ 		
+ 	 	HPVector v0 = make_HPvector(0,0,34567.89);
+ 	 	double min_safe_dist2 = 6000000.0 * 6000000.0;
+@@ -1263,7 +1263,7 @@
+ 	 	cachedStation = nil;	
+ 	}
+ 
+-	OO_DEBUG_PUSH_PROGRESS(@"setUpSpace - populate from hyperpoint");
++	OO_DEBUG_PUSH_PROGRESS(@"%@", @"setUpSpace - populate from hyperpoint");
+ //	[self populateSpaceFromHyperPoint:witchPos toPlanetPosition: a_planet->position andSunPosition: a_sun->position];
+ 	[self clearSystemPopulator];
+ 
+@@ -1288,7 +1288,7 @@
+ 		OOStandardsDeprecated([NSString stringWithFormat:@"The script_actions system info key is deprecated for %@.",[self getSystemName:systemID]]);
+ 		if (!OOEnforceStandards()) 
+ 		{
+-			OO_DEBUG_PUSH_PROGRESS(@"setUpSpace - legacy script_actions");
++			OO_DEBUG_PUSH_PROGRESS(@"%@", @"setUpSpace - legacy script_actions");
+ 			[PLAYER runUnsanitizedScriptActions:script_actions
+ 							  allowingAIMethods:NO
+ 								withContextName:@"<system script_actions>"
+@@ -7447,7 +7447,7 @@
+ 	NSString *key = nil;
+ 	if (_descriptions == nil)
+ 	{
+-		OOLog(@"descriptions.verify",@"***** FATAL: Tried to verify descriptions, but descriptions was nil - unable to load any descriptions.plist file.");
++		OOLog(@"descriptions.verify", @"%@", @"***** FATAL: Tried to verify descriptions, but descriptions was nil - unable to load any descriptions.plist file.");
+ 		exit(EXIT_FAILURE);
+ 	}
+ 	foreachkey (key, _descriptions)
+@@ -7819,7 +7819,7 @@
+ 
+ - (OOSystemID) findSystemAtCoords:(NSPoint) coords withGalaxy:(OOGalaxyID) g
+ {
+-	OOLog(@"deprecated.function",@"findSystemAtCoords");
++	OOLog(@"deprecated.function", @"%@", @"findSystemAtCoords");
+ 	return [self findSystemNumberAtCoords:coords withGalaxy:g includingHidden:YES];
+ }
+ 
+@@ -9889,19 +9889,19 @@
+ {
+ 	PlayerEntity* player = PLAYER;
+ 	
+-	OO_DEBUG_PUSH_PROGRESS(@"Wormhole and character reset");
++	OO_DEBUG_PUSH_PROGRESS(@"%@", @"Wormhole and character reset");
+ 	if (activeWormholes) [activeWormholes autorelease];
+ 	activeWormholes = [[NSMutableArray arrayWithCapacity:16] retain];
+ 	if (characterPool) [characterPool autorelease];
+ 	characterPool = [[NSMutableArray arrayWithCapacity:256] retain];
+ 	OO_DEBUG_POP_PROGRESS();
+ 	
+-	OO_DEBUG_PUSH_PROGRESS(@"Galaxy reset");
++	OO_DEBUG_PUSH_PROGRESS(@"%@", @"Galaxy reset");
+ 	[self setGalaxyTo: [player galaxyNumber] andReinit:YES];
+ 	systemID = [player systemID];
+ 	OO_DEBUG_POP_PROGRESS();
+ 	
+-	OO_DEBUG_PUSH_PROGRESS(@"Player init: setUpShipFromDictionary");
++	OO_DEBUG_PUSH_PROGRESS(@"%@", @"Player init: setUpShipFromDictionary");
+ 	[player setUpShipFromDictionary:[[OOShipRegistry sharedRegistry] shipInfoForKey:[player shipDataKey]]];	// the standard cobra at this point
+ 	[player baseMass]; // bootstrap the base mass used in all fuel charge calculations.
+ 	OO_DEBUG_POP_PROGRESS();
+--- a/src/Core/Debug/OODebugSupport.m
++++ b/src/Core/Debug/OODebugSupport.m
+@@ -117,7 +117,7 @@
+ 
+ static id LoadDebugPlugIn()
+ {
+-	OO_DEBUG_PUSH_PROGRESS(@"Loading debug plug-in");
++	OO_DEBUG_PUSH_PROGRESS(@"%@", @"Loading debug plug-in");
+ 	
+ 	id debugController = nil;
+ 	
+--- a/src/Core/OOConvertSystemDescriptions.m
++++ b/src/Core/OOConvertSystemDescriptions.m
+@@ -57,7 +57,7 @@
+ 												   andMerge:NO];
+ 	if (sysDescDict == nil)
+ 	{
+-		OOLog(@"sysdesc.compile.failed.fileNotFound", @"Could not load a dictionary from sysdesc.plist, ignoring --compile-sysdesc option.");
++		OOLog(@"sysdesc.compile.failed.fileNotFound", @"%@", @"Could not load a dictionary from sysdesc.plist, ignoring --compile-sysdesc option.");
+ 		return;
+ 	}
+ 	
+@@ -69,7 +69,7 @@
+ 	sysDescArray = OOConvertSystemDescriptionsToArrayFormat(sysDescDict, keyMap);
+ 	if (sysDescArray == nil)
+ 	{
+-		OOLog(@"sysdesc.compile.failed.conversion", @"Could not convert sysdesc.plist to descriptions.plist format for some reason.");
++		OOLog(@"sysdesc.compile.failed.conversion", @"%@", @"Could not convert sysdesc.plist to descriptions.plist format for some reason.");
+ 		return;
+ 	}
+ 	
+@@ -94,11 +94,11 @@
+ 	
+ 	if ([ResourceManager writeDiagnosticData:data toFileNamed:@"sysdesc-compiled.plist"])
+ 	{
+-		OOLog(@"sysdesc.compile.success", @"Wrote translated sysdesc.plist to sysdesc-compiled.plist.");
++		OOLog(@"sysdesc.compile.success", @"%@", @"Wrote translated sysdesc.plist to sysdesc-compiled.plist.");
+ 	}
+ 	else
+ 	{
+-		OOLog(@"sysdesc.compile.failed.writeFailure", @"Could not write translated sysdesc.plist to sysdesc-compiled.plist.");
++		OOLog(@"sysdesc.compile.failed.writeFailure", @"%@", @"Could not write translated sysdesc.plist to sysdesc-compiled.plist.");
+ 	}
+ }
+ 
+@@ -121,7 +121,7 @@
+ 	sysDescDict = OOConvertSystemDescriptionsToDictionaryFormat(sysDescArray, keyMap);
+ 	if (sysDescArray == nil)
+ 	{
+-		OOLog(@"sysdesc.export.failed.conversion", @"Could not convert system_description do sysdesc.plist format for some reason.");
++		OOLog(@"sysdesc.export.failed.conversion", @"%@", @"Could not convert system_description do sysdesc.plist format for some reason.");
+ 		return;
+ 	}
+ 	
+@@ -144,11 +144,11 @@
+ 	
+ 	if ([ResourceManager writeDiagnosticData:data toFileNamed:@"sysdesc.plist"])
+ 	{
+-		OOLog(@"sysdesc.export.success", @"Wrote translated system_description to sysdesc.plist.");
++		OOLog(@"sysdesc.export.success", @"%@", @"Wrote translated system_description to sysdesc.plist.");
+ 	}
+ 	else
+ 	{
+-		OOLog(@"sysdesc.export.failed.writeFailure", @"Could not write translated system_description to sysdesc.plist.");
++		OOLog(@"sysdesc.export.failed.writeFailure", @"%@", @"Could not write translated system_description to sysdesc.plist.");
+ 	}
+ }
+ 
diff --git a/debian/patches/secure-format-log-string.diff b/debian/patches/secure-format-log-string.diff
index 95d3ad9..379996a 100644
--- a/debian/patches/secure-format-log-string.diff
+++ b/debian/patches/secure-format-log-string.diff
@@ -1,65 +1,15 @@
 Description: compile with -Werror=format-security, default with gcc-5
- There is probably no security problem in most cases,
- but as @"foo" cannot depend on user input even if non static.
- .
- The Origin and Applied-Upstream commits are both needed to fix the issue.
- .
  Chris Morris <cim at oolite.org>:
  I think this is probably a GCC5 bug, since these are static objc strings,
  and GCC4.9 with the warning option enabled doesn't warn about any of them.
 Origin: https://github.com/OoliteProject/oolite/commit/80835961e0d0fad8c9dd1bfbd26706808360c66f
-Applied-Upstream: https://github.com/OoliteProject/oolite/commit/a439f3de41c0ee967c11a5728db54b79fdd3ec55
+Origin: https://github.com/OoliteProject/oolite/commit/a439f3de41c0ee967c11a5728db54b79fdd3ec55
 Author: Chris Morris <cim at oolite.org>
 Author: Nicolas Boulenguez <nicolas at debian.org>
 Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=778039
 
---- a/src/Core/Entities/PlayerEntityLegacyScriptEngine.m
-+++ b/src/Core/Entities/PlayerEntityLegacyScriptEngine.m
-@@ -2204,7 +2204,7 @@
- 	{
- 		[self playFuelLeak];
- 		[UNIVERSE addMessage:DESC(@"danger-fuel-leak") forCount:6];
--		OOLog(kOOLogNoteFuelLeak, @"FUEL LEAK activated!");
-+		OOLog(kOOLogNoteFuelLeak, @"%@", @"FUEL LEAK activated!");
- 	}
- }
- 
-@@ -2389,13 +2389,13 @@
- - (void) debugOn
- {
- 	OOLogSetDisplayMessagesInClass(kOOLogDebugOnMetaClass, YES);
--	OOLog(kOOLogDebugOnOff, @"SCRIPT debug messages ON");
-+	OOLog(kOOLogDebugOnOff, @"%@", @"SCRIPT debug messages ON");
- }
- 
- 
- - (void) debugOff
- {
--	OOLog(kOOLogDebugOnOff, @"SCRIPT debug messages OFF");
-+	OOLog(kOOLogDebugOnOff, @"%@", @"SCRIPT debug messages OFF");
- 	OOLogSetDisplayMessagesInClass(kOOLogDebugOnMetaClass, NO);
- }
- 
-@@ -2947,7 +2947,7 @@
- 	if ([coord_vals count] < 2)	// Will be 0 if string is nil
- 	{
- 		OOLog(@"player.setGalacticHyperspaceFixedCoords.invalidInput",
--			  @"setGalacticHyperspaceFixedCoords: called with bad specifier. Defaulting to Oolite standard.");
-+			  @"%@",@"setGalacticHyperspaceFixedCoords: called with bad specifier. Defaulting to Oolite standard.");
- 		galacticHyperspaceFixedCoords.x = galacticHyperspaceFixedCoords.y = 0x60;
- 	}
- 	
 --- a/src/Core/Entities/PlayerEntityLoadSave.m
 +++ b/src/Core/Entities/PlayerEntityLoadSave.m
-@@ -191,7 +191,7 @@
- 	if (!path)  path = [[gameView gameController] playerFileToLoad];
- 	if (!path)
- 	{
--		OOLog(@"quickSave.failed.noName", @"ERROR no file name returned by [[gameView gameController] playerFileToLoad]");
-+		OOLog(@"quickSave.failed.noName", @"%@", @"ERROR no file name returned by [[gameView gameController] playerFileToLoad]");
- 		[NSException raise:@"OoliteGameNotSavedException"
- 					format:@"ERROR no file name returned by [[gameView gameController] playerFileToLoad]"];
- 	}
 @@ -333,7 +333,7 @@
  	NSString *file = [scenario oo_stringForKey:@"file" defaultValue:nil];
  	if (file == nil) 
@@ -190,1193 +140,3 @@ Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=778039
  	return loadedOK;
  }
  
---- a/src/Core/Entities/Entity.m
-+++ b/src/Core/Entities/Entity.m
-@@ -517,7 +517,7 @@
- - (void) warnAboutHostiles
- {
- 	// do nothing for now, this can be expanded in sub classes
--	OOLog(@"general.error.subclassResponsibility.Entity-warnAboutHostiles", @"***** Entity does nothing in warnAboutHostiles");
-+	OOLog(@"general.error.subclassResponsibility.Entity-warnAboutHostiles", @"%@", @"***** Entity does nothing in warnAboutHostiles");
- }
- 
- 
---- a/src/Core/Entities/PlayerEntity.m
-+++ b/src/Core/Entities/PlayerEntity.m
-@@ -203,7 +203,7 @@
- 		else 
- 		{
- 			// This happened on startup when [UNIVERSE setUpSpace] was called before player init, inside [UNIVERSE setUpInitialUniverse].
--			OOLog(@"fuelPrices", @"Player ship not initialised properly yet, using precalculated base mass.");
-+			OOLog(@"fuelPrices", @"%@", @"Player ship not initialised properly yet, using precalculated base mass.");
- 			return 185580.0;
- 		}
- 	}
-@@ -324,7 +324,7 @@
- 	}
- 	else
- 	{
--		OOLogERR(@"player.loadCargoPods.noContainer", @"couldn't create a container in [PlayerEntity loadCargoPods]");
-+		OOLogERR(@"player.loadCargoPods.noContainer", @"%@", @"couldn't create a container in [PlayerEntity loadCargoPods]");
- 		// throw an exception here...
- 		[NSException raise:OOLITE_EXCEPTION_FATAL
- 								format:@"[PlayerEntity loadCargoPods] failed to create a container for cargo with role 'cargopod'"];
-@@ -1489,12 +1489,12 @@
- 		*/
- 		if ([self mountMissileWithRole:@"EQ_QC_MINE"])
- 		{
--			OOLog(@"load.upgrade.replacedEnergyBomb", @"Replaced legacy energy bomb with Quirium cascade mine.");
-+			OOLog(@"load.upgrade.replacedEnergyBomb", @"%@", @"Replaced legacy energy bomb with Quirium cascade mine.");
- 		}
- 		else
- 		{
- 			credits += 9000;
--			OOLog(@"load.upgrade.replacedEnergyBomb", @"Compensated legacy energy bomb with 900 credits.");
-+			OOLog(@"load.upgrade.replacedEnergyBomb", @"%@", @"Compensated legacy energy bomb with 900 credits.");
- 		}
- 	}
- 	
-@@ -1663,7 +1663,7 @@
- 		// set up STATUS_DEAD
- 		[self setDockedStation:nil];	// needed for STATUS_DEAD
- 		[self setStatus:STATUS_DEAD];
--		OOLog(@"script.javascript.init.error", @"Scheduling new JavaScript reset.");
-+		OOLog(@"script.javascript.init.error", @"%@", @"Scheduling new JavaScript reset.");
- 		shot_time = kDeadResetTime - 0.02f;	// schedule reinit 20 milliseconds from now.
- 		
- 		if (![gc inFullScreenMode])	[gc startAnimationTimer];	// keep the game ticking over.
-@@ -3782,7 +3782,7 @@
- 		switch ([wh scanInfo])
- 		{
- 			case WH_SCANINFO_NONE:
--				OOLog(kOOLogInconsistentState, @"Internal Error - WH_SCANINFO_NONE reached in [PlayerEntity updateTargeting:]");
-+				OOLog(kOOLogInconsistentState, @"%@", @"Internal Error - WH_SCANINFO_NONE reached in [PlayerEntity updateTargeting:]");
- 				[self dumpState];
- 				[wh dumpState];
- 				// Workaround a reported hit of the assert here.  We really
-@@ -4508,7 +4508,7 @@
- 		// Invariant/safety interlock: weapons offline implies missiles safe. -- Ahruman 2012-07-21
- 		if (missile_status != MISSILE_STATUS_SAFE)
- 		{
--			OOLogERR(@"player.missilesUnsafe", @"Missile state is not SAFE when weapons are offline. This is a bug, please report it.");
-+			OOLogERR(@"player.missilesUnsafe", @"%@", @"Missile state is not SAFE when weapons are offline. This is a bug, please report it.");
- 			[self safeAllMissiles];
- 		}
- 		return MISSILE_STATUS_SAFE;
-@@ -6822,7 +6822,7 @@
- 	
- 	if ( ![self wormhole] && !galactic_witchjump)	// galactic hyperspace does not generate a wormhole
- 	{
--		OOLog(kOOLogInconsistentState, @"Internal Error : Player entering witchspace with no wormhole.");
-+		OOLog(kOOLogInconsistentState, @"%@", @"Internal Error : Player entering witchspace with no wormhole.");
- 	}
- 	[UNIVERSE allShipsDoScriptEvent:OOJSID("playerWillEnterWitchspace") andReactToAIMessage:@"PLAYER WITCHSPACE"];
- 	
-@@ -8197,7 +8197,7 @@
- 		NSUInteger		displayModeIndex = [controller indexOfCurrentDisplayMode];
- 		if (displayModeIndex == NSNotFound)
- 		{
--			OOLogWARN(@"display.currentMode.notFound", @"couldn't find current fullscreen setting, switching to default.");
-+			OOLogWARN(@"display.currentMode.notFound", @"%@", @"couldn't find current fullscreen setting, switching to default.");
- 			displayModeIndex = 0;
- 		}
- 		
-@@ -9715,7 +9715,7 @@
- 	
- 	if ([eqType isMissileOrMine] && missiles >= max_missiles)
- 	{
--		OOLog(@"equip.buy.mounted.failed.full", @"rejecting missile because already full");
-+		OOLog(@"equip.buy.mounted.failed.full", @"%@", @"rejecting missile because already full");
- 		return NO;
- 	}
- 	
-@@ -11295,7 +11295,7 @@
- 		
- 		if (info_failed)
- 		{
--			OOLog(@"cheat.tentative", @"POSSIBLE CHEAT DETECTED");
-+			OOLog(@"cheat.tentative", @"%@", @"POSSIBLE CHEAT DETECTED");
- 			possible_cheat = YES;
- 		}
- 		
-@@ -11315,7 +11315,7 @@
- 		}
- 		
- 		if (possible_cheat && !info_failed)
--			OOLog(@"cheat.verified", @"CHEAT DEFEATED - that's not the way to get rid of trumbles!");
-+			OOLog(@"cheat.verified", @"%@", @"CHEAT DEFEATED - that's not the way to get rid of trumbles!");
- 	}
- 	
- 	if (info_failed && [[NSUserDefaults standardUserDefaults] objectForKey:namekey])
-@@ -11337,7 +11337,7 @@
- 		}
- 		
- 		if (!info_failed)
--			OOLog(@"cheat.verified", @"CHEAT DEFEATED - that's not the way to get rid of trumbles!");
-+			OOLog(@"cheat.verified", @"%@", @"CHEAT DEFEATED - that's not the way to get rid of trumbles!");
- 	}
- 	// at this stage we've done the best we can to stop cheaters
- 	trumbleCount = putativeNTrumbles;
---- a/src/Core/Entities/PlayerEntityControls.m
-+++ b/src/Core/Entities/PlayerEntityControls.m
-@@ -2150,7 +2150,7 @@
- 						OOLog(kOOLogException, @"\n\n***** Handling exception: %@ : %@ *****\n\n",[exception name], [exception reason]);
- 						if ([[exception name] isEqual:@"GameNotSavedException"])	// try saving game instead
- 						{
--							OOLog(kOOLogException, @"\n\n***** Trying a normal save instead *****\n\n");
-+							OOLog(kOOLogException, @"%@", @"\n\n***** Trying a normal save instead *****\n\n");
- 							if ([controller inFullScreenMode])
- 								[controller pauseFullScreenModeToPerform:@selector(savePlayer) onTarget:self];
- 							else
-@@ -2888,7 +2888,7 @@
- 		
- 		if (displayModeIndex == (NSInteger)NSNotFound)
- 		{
--			OOLogWARN(@"graphics.mode.notFound", @"couldn't find current fullscreen setting, switching to default.");
-+			OOLogWARN(@"graphics.mode.notFound", @"%@", @"couldn't find current fullscreen setting, switching to default.");
- 			displayModeIndex = 0;
- 		}
- 		else
---- a/src/Core/Entities/ShipEntity.m
-+++ b/src/Core/Entities/ShipEntity.m
-@@ -13208,7 +13208,7 @@
- 	BOOL OK = NO;
- 	if ([self isPlayer] && [(PlayerEntity *)self isDocked])
- 	{
--		OOLog(@"ShipEntity.abandonShip.failed", @"Player cannot abandon ship while docked.");
-+		OOLog(@"ShipEntity.abandonShip.failed", @"%@", @"Player cannot abandon ship while docked.");
- 		return OK;
- 	}
- 	
---- a/src/Core/Entities/ShipEntityAI.m
-+++ b/src/Core/Entities/ShipEntityAI.m
-@@ -1337,7 +1337,7 @@
- 	}
- 	else
- 	{
--		OOLog(@"ai.setTakeOffFromPlanet.noPlanet", @"***** Error. Planet not found during take off!");
-+		OOLog(@"ai.setTakeOffFromPlanet.noPlanet", @"%@", @"***** Error. Planet not found during take off!");
- 	}
- }
- 
---- a/src/Core/Entities/SkyEntity.m
-+++ b/src/Core/Entities/SkyEntity.m
-@@ -195,7 +195,7 @@
- 	}
- 	else
- 	{
--		OOLog(@"sky.warning",@"PLAYER is nil");
-+		OOLog(@"sky.warning", @"%@", @"PLAYER is nil");
- 	}
- }
- 
---- a/src/Core/Entities/WormholeEntity.m
-+++ b/src/Core/Entities/WormholeEntity.m
-@@ -623,7 +623,7 @@
- 	}
- 	else
- 	{
--		OOLogERR(kOOLogInconsistentState, @"Wormhole identified when ship has no EQ_WORMHOLE_SCANNER.");
-+		OOLogERR(kOOLogInconsistentState, @"%@", @"Wormhole identified when ship has no EQ_WORMHOLE_SCANNER.");
- 		/*
- 			This was previously an assertion, but a player reported hitting it.
- 			http://aegidian.org/bb/viewtopic.php?p=128110#p128110
---- a/src/Core/GameController.m
-+++ b/src/Core/GameController.m
-@@ -835,7 +835,7 @@
- 	[[OODebugMonitor sharedDebugMonitor] applicationWillTerminate];
- #endif
- 	[[NSUserDefaults standardUserDefaults] synchronize];
--	OOLog(@"gameController.exitApp",@".GNUstepDefaults synchronized.");
-+	OOLog(@"gameController.exitApp", @"%@", @".GNUstepDefaults synchronized.");
- 	OOLoggingTerminate();
- 	SDL_Quit();
- 	[[OOOpenALController sharedController] shutdown];
---- a/src/Core/Materials/OOMaterial.m
-+++ b/src/Core/Materials/OOMaterial.m
-@@ -152,7 +152,7 @@
- {
- 	if (EXPECT_NOT(sActiveMaterial == self))
- 	{
--		OOLog(@"shader.dealloc.imbalance", @"***** Material deallocated while active, indicating a retain/release imbalance.");
-+		OOLog(@"shader.dealloc.imbalance", @"%@", @"***** Material deallocated while active, indicating a retain/release imbalance.");
- 		[self unapplyWithNext:nil];
- 		sActiveMaterial = nil;
- 	}
---- a/src/Core/Materials/OOPlanetTextureGenerator.m
-+++ b/src/Core/Materials/OOPlanetTextureGenerator.m
-@@ -148,12 +148,12 @@
- 
- - (id) initWithPlanetInfo:(NSDictionary *)planetInfo
- {
--	OOLog(@"texture.planet.generate",@"Initialising planetary generator");
-+	OOLog(@"texture.planet.generate", @"%@", @"Initialising planetary generator");
- 
- 	// AllowCubeMap not used yet but might be in future
- 	if ((self = [super initWithPath:[NSString stringWithFormat:@"OOPlanetTexture@%p", self] options:kOOTextureAllowCubeMap]))
- 	{
--		OOLog(@"texture.planet.generate",@"Extracting parameters for generator %@",self);
-+		OOLog(@"texture.planet.generate", @"Extracting parameters for generator %@",self);
- 
- 		_info.landFraction = OOClamp_0_1_f([planetInfo oo_floatForKey:@"land_fraction" defaultValue:0.3]);
- 		_info.polarFraction = OOClamp_0_1_f([planetInfo oo_floatForKey:@"polar_fraction" defaultValue:0.05]);
-@@ -164,7 +164,7 @@
- 		[[planetInfo objectForKey:@"noise_map_seed"] getValue:&_info.seed];
- 		if ([planetInfo objectForKey:@"cloud_alpha"])
- 		{
--			OOLog(@"texture.planet.generate",@"Extracting atmosphere parameters");
-+			OOLog(@"texture.planet.generate", @"%@", @"Extracting atmosphere parameters");
- 			// we have an atmosphere:
- 			_info.cloudAlpha = [planetInfo oo_floatForKey:@"cloud_alpha" defaultValue:1.0f];
- 			_info.cloudFraction = OOClamp_0_1_f([planetInfo oo_floatForKey:@"cloud_fraction" defaultValue:0.3]);
-@@ -1324,7 +1324,7 @@
- 
- - (void) completeWithData:(void *)data_ width:(unsigned)width_ height:(unsigned)height_
- {
--	OOLog(@"texture.planet.generate",@"Completing atmosphere generator");
-+	OOLog(@"texture.planet.generate", @"%@", @"Completing atmosphere generator");
- 
- 	_data = data_;
- 	_width = width_;
---- a/src/Core/Materials/OOStandaloneAtmosphereGenerator.m
-+++ b/src/Core/Materials/OOStandaloneAtmosphereGenerator.m
-@@ -101,14 +101,14 @@
- 
- - (id) initWithPlanetInfo:(NSDictionary *)planetInfo
- {
--	OOLog(@"texture.planet.generate",@"Initialising standalone atmosphere generator");
-+	OOLog(@"texture.planet.generate", @"%@", @"Initialising standalone atmosphere generator");
- 
- 	// AllowCubeMap not used yet but might be in future
- 	if ((self = [super initWithPath:[NSString stringWithFormat:@"OOStandaloneAtmosphereTexture@%p", self] options:kOOTextureAllowCubeMap]))
- 	{
- 		OOLog(@"texture.planet.generate",@"Extracting parameters for generator %@",self);
- 		[[planetInfo objectForKey:@"noise_map_seed"] getValue:&_info.seed];
--		OOLog(@"texture.planet.generate",@"Extracting atmosphere parameters");
-+		OOLog(@"texture.planet.generate", @"%@", @"Extracting atmosphere parameters");
- 		// we are an atmosphere:
- 		_info.cloudAlpha = [planetInfo oo_floatForKey:@"cloud_alpha" defaultValue:1.0f];
- 		_info.cloudFraction = OOClamp_0_1_f([planetInfo oo_floatForKey:@"cloud_fraction" defaultValue:0.3]);
---- a/src/Core/Materials/OOTextureLoader.m
-+++ b/src/Core/Materials/OOTextureLoader.m
-@@ -329,7 +329,7 @@
- 		
- 		if (_data != NULL)  [self applySettings];
- 		
--		OOLog(@"texture.load.asyncLoad.done", @"Loading complete.");
-+		OOLog(@"texture.load.asyncLoad.done", @"%@", @"Loading complete.");
- 	}
- 	@catch (NSException *exception)
- 	{
---- a/src/Core/OOALBufferedSound.m
-+++ b/src/Core/OOALBufferedSound.m
-@@ -84,7 +84,7 @@
- 	OOAL(alGenBuffers(1,&buffer));
- 	if ((error = alGetError()) != AL_NO_ERROR)
- 	{
--		OOLog(kOOLogSoundLoadingError,@"Could not create OpenAL buffer");
-+		OOLog(kOOLogSoundLoadingError, @"%@", @"Could not create OpenAL buffer");
- 		return 0;
- 	}
- 	else
---- a/src/Core/OOALSoundChannel.m
-+++ b/src/Core/OOALSoundChannel.m
-@@ -49,7 +49,7 @@
- 		OOAL(alGenSources(1,&_source));
- 		if ((error = alGetError()) != AL_NO_ERROR)
- 		{
--			OOLog(kOOLogSoundInitError, @"Could not create OpenAL source");
-+			OOLog(kOOLogSoundInitError, @"%@", @"Could not create OpenAL source");
- 			[self release];
- 			self = nil;
- 		}
---- a/src/Core/OOALStreamedSound.m
-+++ b/src/Core/OOALStreamedSound.m
-@@ -107,7 +107,7 @@
- 	OOAL(alGenBuffers(1,&buffer));
- 	if ((error = alGetError()) != AL_NO_ERROR)
- 	{
--		OOLog(kOOLogSoundLoadingError,@"Could not create OpenAL buffer");
-+		OOLog(kOOLogSoundLoadingError, @"%@", @"Could not create OpenAL buffer");
- 		return 0;
- 	}
- 	else
---- a/src/Core/OOAsyncWorkManager.m
-+++ b/src/Core/OOAsyncWorkManager.m
-@@ -121,7 +121,7 @@
- 	
- 	if (sSingleton == nil)
- 	{
--		OOLog(@"asyncWorkManager.setUpDispatcher.failed", @"***** FATAL ERROR: could not set up async work manager!");
-+		OOLog(@"asyncWorkManager.setUpDispatcher.failed", @"%@", @"***** FATAL ERROR: could not set up async work manager!");
- 		exit(EXIT_FAILURE);
- 	}
- 	
---- a/src/Core/OOCPUInfo.m
-+++ b/src/Core/OOCPUInfo.m
-@@ -67,7 +67,7 @@
- #if OOLITE_BIG_ENDIAN
- 	if (*(uint32_t*)endianTag != 0x12345678)
- 	{
--		OOLog(@"cpuInfo.endianTest.failed", @"OOLITE_BIG_ENDIAN is set, but the system is not big-endian -- aborting.");
-+		OOLog(@"cpuInfo.endianTest.failed", @"%@", @"OOLITE_BIG_ENDIAN is set, but the system is not big-endian -- aborting.");
- 		exit(EXIT_FAILURE);
- 	}
- #endif
-@@ -75,7 +75,7 @@
- #if OOLITE_LITTLE_ENDIAN
- 	if (*(uint32_t*)endianTag != 0x78563412)
- 	{
--		OOLog(@"cpuInfo.endianTest.failed", @"OOLITE_LITTLE_ENDIAN is set, but the system is not little-endian -- aborting.");
-+		OOLog(@"cpuInfo.endianTest.failed", @"%@", @"OOLITE_LITTLE_ENDIAN is set, but the system is not little-endian -- aborting.");
- 		exit(EXIT_FAILURE);
- 	}
- #endif
---- a/src/Core/OOCacheManager.m
-+++ b/src/Core/OOCacheManager.m
-@@ -344,7 +344,7 @@
- 	if (cache != nil)
- 	{
- 		// We have a cache
--		OOLog(kOOLogDataCacheFound, @"Found data cache.");
-+		OOLog(kOOLogDataCacheFound, @"%@", @"Found data cache.");
- 		OOLogIndentIf(kOOLogDataCacheFound);
- 		
- 		cacheVersion = [cache objectForKey:kCacheKeyVersion];
-@@ -366,7 +366,7 @@
- 			endianTag = [cache objectForKey:kCacheKeyEndianTag];
- 			if (![endianTag isKindOfClass:[NSData class]] || [endianTag length] != sizeof endianTagValue)
- 			{
--				OOLog(kOOLogDataCacheRebuild, @"Data cache endian tag is invalid, rebuilding cache.");
-+				OOLog(kOOLogDataCacheRebuild, @"%@", @"Data cache endian tag is invalid, rebuilding cache.");
- 				accept = NO;
- 			}
- 			else
-@@ -374,7 +374,7 @@
- 				endianTagValue = *(const uint64_t *)[endianTag bytes];
- 				if (endianTagValue != kEndianTagValue)
- 				{
--					OOLog(kOOLogDataCacheRebuild, @"Data cache endianness is inappropriate for this system, rebuilding cache.");
-+					OOLog(kOOLogDataCacheRebuild, @"%@", @"Data cache endianness is inappropriate for this system, rebuilding cache.");
- 					accept = NO;
- 				}
- 			}
-@@ -391,7 +391,7 @@
- 	else
- 	{
- 		// No cache
--		OOLog(kOOLogDataCacheNotFound, @"No data cache found, starting from scratch.");
-+		OOLog(kOOLogDataCacheNotFound, @"%@", @"No data cache found, starting from scratch.");
- 	}
- 	
- 	// If loading failed, or there was a version or endianness conflict
-@@ -417,9 +417,9 @@
- #endif
- 	
- #if WRITE_ASYNC
--	OOLog(@"dataCache.willWrite", @"Scheduling data cache write.");
-+	OOLog(@"dataCache.willWrite", @"%@", @"Scheduling data cache write.");
- #else
--	OOLog(@"dataCache.willWrite", @"About to write cache.");
-+	OOLog(@"dataCache.willWrite", @"%@", @"About to write cache.");
- #endif
- 	
- 	ooliteVersion = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleVersion"];
-@@ -429,7 +429,7 @@
- 	pListRep = [self dictionaryOfCaches];
- 	if (ooliteVersion == nil || endianTag == nil || formatVersion == nil || pListRep == nil)
- 	{
--		OOLog(@"dataCache.cantWrite", @"Failed to write data cache -- prerequisites not fulfilled. %@",@"This is an internal error, please report it.");
-+		OOLog(@"dataCache.cantWrite", @"%@", @"Failed to write data cache -- prerequisites not fulfilled. This is an internal error, please report it.");
- 		return;
- 	}
- 	
-@@ -461,11 +461,11 @@
- 	if ([self writeDict:newCache])
- 	{
- 		[self markClean];
--		OOLog(kOOLogDataCacheWriteSuccess, @"Wrote data cache.");
-+		OOLog(kOOLogDataCacheWriteSuccess, @"%@", @"Wrote data cache.");
- 	}
- 	else
- 	{
--		OOLog(kOOLogDataCacheWriteFailed, @"Failed to write data cache.");
-+		OOLog(kOOLogDataCacheWriteFailed, @"%@", @"Failed to write data cache.");
- 	}
- #endif
- }
-@@ -733,11 +733,11 @@
- {
- 	if ([[OOCacheManager sharedCache] writeDict:_cacheContents])
- 	{
--		OOLog(kOOLogDataCacheWriteSuccess, @"Wrote data cache.");
-+		OOLog(kOOLogDataCacheWriteSuccess, @"%@", @"Wrote data cache.");
- 	}
- 	else
- 	{
--		OOLog(kOOLogDataCacheWriteFailed, @"Failed to write data cache.");
-+		OOLog(kOOLogDataCacheWriteFailed, @"%@", @"Failed to write data cache.");
- 	}
- 	DESTROY(_cacheContents);
- }
---- a/src/Core/OOGraphicsResetManager.m
-+++ b/src/Core/OOGraphicsResetManager.m
-@@ -74,7 +74,7 @@
- 	
- 	OOGL(glFinish());
- 	
--	OOLog(@"rendering.reset.start", @"Resetting graphics state.");
-+	OOLog(@"rendering.reset.start", @"%@", @"Resetting graphics state.");
- 	OOLogIndentIf(@"rendering.reset.start");
- 	
- 	[[OOOpenGLExtensionManager sharedManager] reset];
-@@ -93,7 +93,7 @@
- 	}
- 	
- 	OOLogOutdentIf(@"rendering.reset.start");
--	OOLog(@"rendering.reset.end", @"End of graphics state reset.");
-+	OOLog(@"rendering.reset.end", @"%@", @"End of graphics state reset.");
- }
- 
- @end
---- a/src/Core/OOMeshToOctreeConverter.m
-+++ b/src/Core/OOMeshToOctreeConverter.m
-@@ -922,7 +922,7 @@
- 	
- 	if (EXPECT_NOT(data->triangles == NULL))
- 	{
--		OOLog(kOOLogAllocationFailure, @"!!!!! Ran out of memory to allocate more geometry!");
-+		OOLog(kOOLogAllocationFailure, @"%@", @"!!!!! Ran out of memory to allocate more geometry!");
- 		exit(EXIT_FAILURE);
- 	}
- 	
---- a/src/Core/OOOXZManager.m
-+++ b/src/Core/OOOXZManager.m
-@@ -595,7 +595,7 @@
- 	{
- 		return NO;
- 	}
--	OOLog(kOOOXZDebugLog,@"Trying to cancel file download");
-+	OOLog(kOOOXZDebugLog, @"%@", @"Trying to cancel file download");
- 	if (_currentDownload != nil)
- 	{
- 		[_currentDownload cancel];
-@@ -734,7 +734,7 @@
- 		)
- 	{
- 		_downloadStatus = OXZ_DOWNLOAD_ERROR;
--		OOLog(kOOOXZErrorLog,@"Downloaded OXZ does not have the same identifer and version as expected. This might be due to your manifests list being out of date - try updating it.");
-+		OOLog(kOOOXZErrorLog, @"%@", @"Downloaded OXZ does not have the same identifer and version as expected. This might be due to your manifests list being out of date - try updating it.");
- 		_interfaceState = OXZ_STATE_TASKDONE;
- 		[self gui];
- 		return NO;
-@@ -746,7 +746,7 @@
- 	if (![self ensureInstallPath])
- 	{
- 		_downloadStatus = OXZ_DOWNLOAD_ERROR;
--		OOLog(kOOOXZErrorLog,@"Unable to create installation folder.");
-+		OOLog(kOOOXZErrorLog, @"%@", @"Unable to create installation folder.");
- 		_interfaceState = OXZ_STATE_TASKDONE;
- 		[self gui];
- 		return NO;
-@@ -760,7 +760,7 @@
- 	if (![[NSFileManager defaultManager] oo_moveItemAtPath:[self downloadPath] toPath:destination])
- 	{
- 		_downloadStatus = OXZ_DOWNLOAD_ERROR;
--		OOLog(kOOOXZErrorLog,@"Downloaded OXZ could not be installed.");
-+		OOLog(kOOOXZErrorLog, @"%@", @"Downloaded OXZ could not be installed.");
- 		_interfaceState = OXZ_STATE_TASKDONE;
- 		[self gui];
- 		return NO;
-@@ -804,7 +804,7 @@
- 				[progress appendFormat:DESC(@"oolite-oxzmanager-progress-now-has-@"),[requirement oo_stringForKey:kOOManifestRelationDescription defaultValue:[requirement oo_stringForKey:kOOManifestRelationIdentifier]]];
- 				// it was unmet, but now it's met
- 				[_dependencyStack removeObject:requirement];
--				OOLog(kOOOXZDebugLog,@"Dependency stack: requirement met");
-+				OOLog(kOOOXZDebugLog, @"%@", @"Dependency stack: requirement met");
- 			} else if ([[requirement oo_stringForKey:kOOManifestRelationIdentifier] isEqualToString:[downloadedManifest oo_stringForKey:kOOManifestIdentifier]]) {
- 				// remove the requirement for the just downloaded OXP
- 				[_dependencyStack removeObject:requirement];
-@@ -851,7 +851,7 @@
- 				{
- 					if ([ResourceManager matchVersions:requirement withVersion:[availableDownload oo_stringForKey:kOOManifestVersion]])
- 					{
--						OOLog(kOOOXZDebugLog,@"Dependency stack: found download for next item");
-+						OOLog(kOOOXZDebugLog, @"%@", @"Dependency stack: found download for next item");
- 						foundDownload = YES;
- 						index = [_oxzList indexOfObject:availableDownload];
- 						break;
-@@ -900,7 +900,7 @@
- 					[self setProgressStatus:progress];
- 					OOLog(kOOOXZErrorLog,@"OXZ dependency %@ could not be found for automatic download.",needsIdentifier);
- 					_downloadStatus = OXZ_DOWNLOAD_ERROR;
--					OOLog(kOOOXZErrorLog,@"Downloaded OXZ could not be installed.");
-+					OOLog(kOOOXZErrorLog, @"%@", @"Downloaded OXZ could not be installed.");
- 					_interfaceState = OXZ_STATE_TASKDONE;
- 					[self gui];
- 					return NO;
-@@ -922,7 +922,7 @@
- 			[self setProgressStatus:progress];
- 			OOLog(kOOOXZErrorLog,@"OXZ dependency %@ could not be found for automatic download.",needsIdentifier);
- 			_downloadStatus = OXZ_DOWNLOAD_ERROR;
--			OOLog(kOOOXZErrorLog,@"Downloaded OXZ could not be installed.");
-+			OOLog(kOOOXZErrorLog, @"%@", @"Downloaded OXZ could not be installed.");
- 			_interfaceState = OXZ_STATE_TASKDONE;
- 			[self gui];
- 			return NO;
-@@ -1612,7 +1612,7 @@
- 	NSString *url = [manifest objectForKey:kOOManifestDownloadURL];
- 	if (url == nil)
- 	{
--		OOLog(kOOOXZErrorLog,@"Manifest does not have a download URL - cannot install");
-+		OOLog(kOOOXZErrorLog, @"%@", @"Manifest does not have a download URL - cannot install");
- 		return NO;
- 	}
- 	NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:url]];
-@@ -2187,7 +2187,7 @@
- - (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response
- {
- 	_downloadStatus = OXZ_DOWNLOAD_RECEIVING;
--	OOLog(kOOOXZDebugLog,@"Download receiving");
-+	OOLog(kOOOXZDebugLog, @"%@", @"Download receiving");
- 	_downloadExpected = [response expectedContentLength];
- 	_downloadProgress = 0;
- 	DESTROY(_fileWriter);
-@@ -2196,7 +2196,7 @@
- 	if (_fileWriter == nil)
- 	{
- 		// file system is full or read-only or something
--		OOLog(kOOOXZErrorLog,@"Unable to create download file");
-+		OOLog(kOOOXZErrorLog, @"%@", @"Unable to create download file");
- 		[self cancelUpdate];
- 	}
- }
-@@ -2233,7 +2233,7 @@
- - (void)connectionDidFinishLoading:(NSURLConnection *)connection
- {
- 	_downloadStatus = OXZ_DOWNLOAD_COMPLETE;
--	OOLog(kOOOXZDebugLog,@"Download complete");
-+	OOLog(kOOOXZDebugLog, @"%@", @"Download complete");
- 	[_fileWriter synchronizeFile];
- 	[_fileWriter closeFile];
- 	DESTROY(_fileWriter);
---- a/src/Core/OOOpenALController.m
-+++ b/src/Core/OOOpenALController.m
-@@ -51,14 +51,14 @@
- 		device = alcOpenDevice(NULL); // default device
- 		if (!device)
- 		{
--			OOLog(kOOLogSoundInitError,@"Failed to open default sound device");
-+			OOLog(kOOLogSoundInitError, @"%@", @"Failed to open default sound device");
- 			[self release];
- 			return nil;
- 		}
- 		context = alcCreateContext(device,NULL); // default context
- 		if (!alcMakeContextCurrent(context))
- 		{
--			OOLog(kOOLogSoundInitError,@"Failed to create default sound context");
-+			OOLog(kOOLogSoundInitError, @"%@", @"Failed to create default sound context");
- 			[self release];
- 			return nil;
- 		}
---- a/src/Core/OOOpenGLExtensionManager.m
-+++ b/src/Core/OOOpenGLExtensionManager.m
-@@ -253,7 +253,7 @@
- 		
- 		if (shadersAvailable)
- 		{
--			OOLog(kOOLogOpenGLShaderSupport, @"Shaders are supported.");
-+			OOLog(kOOLogOpenGLShaderSupport, @"%@", @"Shaders are supported.");
- 		}
- 	}
- 	else
-@@ -521,7 +521,7 @@
- 	{
- 		if ([arg isEqual:@"-noshaders"] || [arg isEqual:@"--noshaders"])
- 		{
--			OOLog(kOOLogOpenGLShaderSupport, @"Shaders will not be used (disabled on command line).");
-+			OOLog(kOOLogOpenGLShaderSupport, @"%@", @"Shaders will not be used (disabled on command line).");
- 			return;
- 		}
- 	}	
---- a/src/Core/OOShipRegistry.m
-+++ b/src/Core/OOShipRegistry.m
-@@ -304,46 +304,46 @@
- 	
- 	// Make each entry mutable to simplify later stages. Also removes any entries that aren't dictionaries.
- 	if (![self makeShipEntriesMutable:result])  return;
--	OOLog(@"shipData.load.progress", @"Finished initial cleanup...");
-+	OOLog(@"shipData.load.progress", @"%@", @"Finished initial cleanup...");
- 	
- 	// Apply patches.
- 	if (![self loadAndApplyShipDataOverrides:result])  return;
--	OOLog(@"shipData.load.progress", @"Finished applying patches...");
-+	OOLog(@"shipData.load.progress", @"%@", @"Finished applying patches...");
- 	
- 	// Strip private keys (anything starting with _oo_).
- 	if (![self stripPrivateKeys:result])  return;
--	OOLog(@"shipData.load.progress", @"Finished stripping private keys...");
-+	OOLog(@"shipData.load.progress", @"%@", @"Finished stripping private keys...");
- 	
- 	// Resolve like_ship entries.
- 	if (![self applyLikeShips:result withKey:@"like_ship"])  return;
--	OOLog(@"shipData.load.progress", @"Finished resolving like_ships...");
-+	OOLog(@"shipData.load.progress", @"%@", @"Finished resolving like_ships...");
- 	
- 	// Clean up subentity declarations and tag subentities so they won't be pruned.
- 	if (![self canonicalizeAndTagSubentities:result])  return;
--	OOLog(@"shipData.load.progress", @"Finished cleaning up subentities...");
-+	OOLog(@"shipData.load.progress", @"%@", @"Finished cleaning up subentities...");
- 	
- 	// Clean out templates and invalid entries.
- 	if (![self removeUnusableEntries:result shipMode:YES])  return;
--	OOLog(@"shipData.load.progress", @"Finished removing invalid entries...");
-+	OOLog(@"shipData.load.progress", @"%@", @"Finished removing invalid entries...");
- 	
- 	// Add shipyard entries into shipdata entries.
- 	if (![self loadAndMergeShipyard:result])  return;
--	OOLog(@"shipData.load.progress", @"Finished adding shipyard entries...");
-+	OOLog(@"shipData.load.progress", @"%@", @"Finished adding shipyard entries...");
- 	
- 	// Sanitize conditions.
- 	if (![self sanitizeConditions:result])  return;
--	OOLog(@"shipData.load.progress", @"Finished validating data...");
-+	OOLog(@"shipData.load.progress", @"%@", @"Finished validating data...");
- 	
- #if PRELOAD
- 	// Preload and cache meshes.
- 	if (![self preloadShipMeshes:result])  return;
--	OOLog(@"shipData.load.progress", @"Finished loading meshes...");
-+	OOLog(@"shipData.load.progress", @"%@", @"Finished loading meshes...");
- #endif
- 	
- 	_shipData = OODeepCopy(result);
- 	[[OOCacheManager sharedCache] setObject:_shipData forKey:kShipDataCacheKey inCache:kShipRegistryCacheName];
- 	
--	OOLog(@"shipData.load.done", @"Ship data loaded.");
-+	OOLog(@"shipData.load.done", @"%@", @"Ship data loaded.");
- 
- 	[_effectData release];
- 	_effectData = nil;
-@@ -356,28 +356,28 @@
- 
- 	// Make each entry mutable to simplify later stages. Also removes any entries that aren't dictionaries.
- 	if (![self makeShipEntriesMutable:result])  return;
--	OOLog(@"effectData.load.progress", @"Finished initial cleanup...");
-+	OOLog(@"effectData.load.progress", @"%@", @"Finished initial cleanup...");
- 
- 	// Strip private keys (anything starting with _oo_).
- 	if (![self stripPrivateKeys:result])  return;
--	OOLog(@"effectData.load.progress", @"Finished stripping private keys...");
-+	OOLog(@"effectData.load.progress", @"%@", @"Finished stripping private keys...");
- 	
- 	// Resolve like_effect entries.
- 	if (![self applyLikeShips:result withKey:@"like_effect"])  return;
--	OOLog(@"effectData.load.progress", @"Finished resolving like_effects...");
-+	OOLog(@"effectData.load.progress", @"%@", @"Finished resolving like_effects...");
- 	
- 	// Clean up subentity declarations and tag subentities so they won't be pruned.
- 	if (![self canonicalizeAndTagSubentities:result])  return;
--	OOLog(@"effectData.load.progress", @"Finished cleaning up subentities...");
-+	OOLog(@"effectData.load.progress", @"%@", @"Finished cleaning up subentities...");
- 	
- 	// Clean out templates and invalid entries.
- 	if (![self removeUnusableEntries:result shipMode:NO])  return;
--	OOLog(@"effectData.load.progress", @"Finished removing invalid entries...");
-+	OOLog(@"effectData.load.progress", @"%@", @"Finished removing invalid entries...");
- 	
- 	_effectData = OODeepCopy(result);
- 	[[OOCacheManager sharedCache] setObject:_effectData forKey:kVisualEffectDataCacheKey inCache:kVisualEffectRegistryCacheName];
- 	
--	OOLog(@"effectData.load.done", @"Effect data loaded.");
-+	OOLog(@"effectData.load.done", @"%@", @"Effect data loaded.");
- }
- 
- 
-@@ -1686,7 +1686,7 @@
- {
- 	if (sSingleton == nil)
- 	{
--		OOLog(@"shipData.load.begin", @"Loading ship data.");
-+		OOLog(@"shipData.load.begin", @"%@", @"Loading ship data.");
- 		sSingleton = [super allocWithZone:inZone];
- 		return sSingleton;
- 	}
---- a/src/Core/OOStringExpander.m
-+++ b/src/Core/OOStringExpander.m
-@@ -575,7 +575,7 @@
- 		else
- 		{
- 			// This is out of the scope of whatever triggered it, so shouldn't be a JS warning.
--			OOLogERR(@"strings.expand.invalidData", @"descriptions.plist entry system_description must be an array of arrays of strings.");
-+			OOLogERR(@"strings.expand.invalidData", @"%@", @"descriptions.plist entry system_description must be an array of arrays of strings.");
- 		}
- 		return nil;
- 	}
-@@ -1047,7 +1047,7 @@
- 	if (EXPECT_NOT(size - idx < 5))
- 	{
- 		// Too close to end of string to actually have three characters, let alone three digits.
--		SyntaxError(context, @"strings.expand.invalidJEscape", kInvalidJEscapeMessage);
-+		SyntaxError(context, @"strings.expand.invalidJEscape", @"%@", kInvalidJEscapeMessage);
- 		return nil;
- 	}
- 	
-@@ -1057,7 +1057,7 @@
- 	
- 	if (!(isdigit(hundreds) && isdigit(tens) && isdigit(units)))
- 	{
--		SyntaxError(context, @"strings.expand.invalidJEscape", kInvalidJEscapeMessage);
-+		SyntaxError(context, @"strings.expand.invalidJEscape", @"%@", kInvalidJEscapeMessage);
- 		return nil;
- 	}
- 	
---- a/src/Core/OOSystemDescriptionManager.m
-+++ b/src/Core/OOSystemDescriptionManager.m
-@@ -330,7 +330,7 @@
- 	}
- 	else
- 	{
--		OOLog(@"system.description.error",@"getPropertiesForCurrentSystem called while player in interstellar space. This is an internal error. Please report it.");
-+		OOLog(@"system.description.error", @"%@", @"getPropertiesForCurrentSystem called while player in interstellar space. This is an internal error. Please report it.");
- 		// this shouldn't be called for interstellar space
- 		return [NSDictionary dictionary];
- 	}
---- a/src/Core/OOTextureScaling.m
-+++ b/src/Core/OOTextureScaling.m
-@@ -349,7 +349,7 @@
- 	}
- 	if (EXPECT_NOT(textureBytes == NULL))
- 	{
--		OOLog(kOOLogParameterError, @"NULL texutre pointer passed to GenerateMipMaps().");
-+		OOLog(kOOLogParameterError, @"%@", @"NULL texture pointer passed to GenerateMipMaps().");
- 		return NO;
- 	}
- 	
---- a/src/Core/ResourceManager.m
-+++ b/src/Core/ResourceManager.m
-@@ -1140,12 +1140,12 @@
- 	
- 	if (EXPECT_NOT([[NSUserDefaults standardUserDefaults] boolForKey:@"always-flush-cache"]))
- 	{
--		OOLog(kOOLogCacheExplicitFlush, @"Cache explicitly flushed with always-flush-cache preference. Rebuilding from scratch.");
-+		OOLog(kOOLogCacheExplicitFlush, @"%@", @"Cache explicitly flushed with always-flush-cache preference. Rebuilding from scratch.");
- 		upToDate = NO;
- 	}
- 	else if ([MyOpenGLView pollShiftKey])
- 	{
--		OOLog(kOOLogCacheExplicitFlush, @"Cache explicitly flushed with shift key. Rebuilding from scratch.");
-+		OOLog(kOOLogCacheExplicitFlush, @"%@", @"Cache explicitly flushed with shift key. Rebuilding from scratch.");
- 		upToDate = NO;
- 	}
- 	
-@@ -1153,7 +1153,7 @@
- 	if (upToDate && ![oldPaths isEqual:searchPaths])
- 	{
- 		// OXPs added/removed
--		if (oldPaths != nil) OOLog(kOOLogCacheStalePaths, @"Cache is stale (search paths have changed). Rebuilding from scratch.");
-+		if (oldPaths != nil) OOLog(kOOLogCacheStalePaths, @"%@", @"Cache is stale (search paths have changed). Rebuilding from scratch.");
- 		upToDate = NO;
- 	}
- 	
-@@ -1173,7 +1173,7 @@
- 		
- 	if (upToDate && ![[cacheMgr objectForKey:kOOCacheKeyModificationDates inCache:kOOCacheSearchPathModDates] isEqual:modDates])
- 	{
--		OOLog(kOOLogCacheStaleDates, @"Cache is stale (modification dates have changed). Rebuilding from scratch.");
-+		OOLog(kOOLogCacheStaleDates, @"%@", @"Cache is stale (modification dates have changed). Rebuilding from scratch.");
- 		upToDate = NO;
- 	}
- 	
-@@ -1183,7 +1183,7 @@
- 		[cacheMgr setObject:searchPaths forKey:kOOCacheKeySearchPaths inCache:kOOCacheSearchPathModDates];
- 		[cacheMgr setObject:modDates forKey:kOOCacheKeyModificationDates inCache:kOOCacheSearchPathModDates];
- 	}
--	else OOLog(kOOLogCacheUpToDate, @"Data cache is up to date.");
-+	else OOLog(kOOLogCacheUpToDate, @"%@", @"Data cache is up to date.");
- 
- 	return upToDate;
- }
-@@ -1632,7 +1632,7 @@
- 
- + (OOSystemDescriptionManager *) systemDescriptionManager
- {
--	OOLog(@"resourceManager.planetinfo.load",@"Initialising manager");
-+	OOLog(@"resourceManager.planetinfo.load", @"%@", @"Initialising manager");
- 	OOSystemDescriptionManager *manager = [[OOSystemDescriptionManager alloc] init];
- 	
- 	NSString *path = nil;
-@@ -1673,9 +1673,9 @@
- 			}
- 		}
- 	}
--	OOLog(@"resourceManager.planetinfo.load",@"Caching routes");
-+	OOLog(@"resourceManager.planetinfo.load", @"%@", @"Caching routes");
- 	[manager buildRouteCache];
--	OOLog(@"resourceManager.planetinfo.load",@"Initialised manager");
-+	OOLog(@"resourceManager.planetinfo.load", @"%@", @"Initialised manager");
- 	return [manager autorelease];
- }
- 
-@@ -1892,7 +1892,7 @@
- 	NSString					*name = nil;
- 	NSAutoreleasePool			*pool = nil;
- 	
--	OOLog(@"script.load.world.begin", @"Loading world scripts...");
-+	OOLog(@"script.load.world.begin", @"%@", @"Loading world scripts...");
- 	
- 	loadedScripts = [NSMutableDictionary dictionary];
- 	paths = [ResourceManager paths];
-@@ -1951,7 +1951,7 @@
- 		}
- 		else
- 		{
--			OOLog(@"script.load.world.listAll", @"*** No world scripts loaded.");
-+			OOLog(@"script.load.world.listAll", @"%@", @"*** No world scripts loaded.");
- 		}
- 	}
- 	
---- a/src/Core/Scripting/OOJavaScriptEngine.m
-+++ b/src/Core/Scripting/OOJavaScriptEngine.m
-@@ -283,7 +283,7 @@
- 	// if runtime creation failed, end the program here.
- 	if (_runtime == NULL)
- 	{
--		OOLog(@"script.javaScript.init.error", @"***** FATAL ERROR: failed to create JavaScript runtime.");
-+		OOLog(@"script.javaScript.init.error", @"%@", @"***** FATAL ERROR: failed to create JavaScript runtime.");
- 		exit(1);
- 	}
- 	
-@@ -306,7 +306,7 @@
- 	// if context creation failed, end the program here.
- 	if (gOOJSMainThreadContext == NULL)
- 	{
--		OOLog(@"script.javaScript.init.error", @"***** FATAL ERROR: failed to create JavaScript context.");
-+		OOLog(@"script.javaScript.init.error", @"%@", @"***** FATAL ERROR: failed to create JavaScript context.");
- 		exit(1);
- 	}
- 	
-@@ -334,7 +334,7 @@
- 	JS_InitStandardClasses(gOOJSMainThreadContext, _globalObject);
- 	if (![self lookUpStandardClassPointers])
- 	{
--		OOLog(@"script.javaScript.init.error", @"***** FATAL ERROR: failed to look up standard JavaScript classes.");
-+		OOLog(@"script.javaScript.init.error", @"%@", @"***** FATAL ERROR: failed to look up standard JavaScript classes.");
- 		exit(1);
- 	}
- 	[self registerStandardObjectConverters];
-@@ -383,7 +383,7 @@
- 	
- 	JS_EndRequest(gOOJSMainThreadContext);
- 	
--	OOLog(@"script.javaScript.init.success", @"Set up JavaScript context.");
-+	OOLog(@"script.javaScript.init.success", @"%@", @"Set up JavaScript context.");
- }
- 
- 
-@@ -425,12 +425,12 @@
- 	static int counter = 3;		// loading a savegame with different strict mode calls js reset twice
- 	if (counter-- == 0) {
- 	counter = 3;
--	OOLog(@"script.javascript.init.error", @"JavaScript processes still pending. Can't reset JavaScript engine.");
-+	OOLog(@"script.javascript.init.error", @"%@", @"JavaScript processes still pending. Can't reset JavaScript engine.");
- 		return NO;
- 	}
- 	else
- 	{
--		OOLog(@"script.javascript.init", @"JavaScript reset successful.");
-+		OOLog(@"script.javascript.init", @"%@", @"JavaScript reset successful.");
- 	}
- #endif
- 		
-@@ -440,12 +440,12 @@
- 	if (JS_IsInRequest(gOOJSMainThreadContext))
- 	{
- 		// some threads are still pending, this should mean timers are still being removed.
--		OOLog(@"script.javascript.init.error", @"JavaScript processes still pending. Can't reset JavaScript engine.");
-+		OOLog(@"script.javascript.init.error", @"%@", @"JavaScript processes still pending. Can't reset JavaScript engine.");
- 		return NO;
- 	}
- 	else
- 	{
--		OOLog(@"script.javascript.init", @"JavaScript reset successful.");
-+		OOLog(@"script.javascript.init", @"%@", @"JavaScript reset successful.");
- 	}
- #endif
- 	
---- a/src/Core/Scripting/OOScript.m
-+++ b/src/Core/Scripting/OOScript.m
-@@ -255,21 +255,21 @@
- 
- - (NSString *)name
- {
--	OOLogERR(kOOLogSubclassResponsibility, @"OOScript should not be used directly!");
-+	OOLogERR(kOOLogSubclassResponsibility, @"%@", @"OOScript should not be used directly!");
- 	return nil;
- }
- 
- 
- - (NSString *)scriptDescription
- {
--	OOLogERR(kOOLogSubclassResponsibility, @"OOScript should not be used directly!");
-+	OOLogERR(kOOLogSubclassResponsibility, @"%@", @"OOScript should not be used directly!");
- 	return nil;
- }
- 
- 
- - (NSString *)version
- {
--	OOLogERR(kOOLogSubclassResponsibility, @"OOScript should not be used directly!");
-+	OOLogERR(kOOLogSubclassResponsibility, @"%@", @"OOScript should not be used directly!");
- 	return nil;
- }
- 
-@@ -293,7 +293,7 @@
- 
- - (void)runWithTarget:(Entity *)target
- {
--	OOLogERR(kOOLogSubclassResponsibility, @"OOScript should not be used directly!");
-+	OOLogERR(kOOLogSubclassResponsibility, @"%@", @"OOScript should not be used directly!");
- }
- 
- @end
---- a/src/Core/Universe.m
-+++ b/src/Core/Universe.m
-@@ -845,7 +845,7 @@
- 	ambientLightLevel = [systeminfo oo_floatForKey:@"ambient_level" defaultValue:1.0];
- 	[self setLighting];	// also sets initial lights positions.
- 	
--	OOLog(kOOLogUniversePopulateWitchspace, @"Populating witchspace ...");
-+	OOLog(kOOLogUniversePopulateWitchspace, @"%@", @"Populating witchspace ...");
- 	OOLogIndentIf(kOOLogUniversePopulateWitchspace);
- 	
- 	[self clearSystemPopulator];
-@@ -1198,7 +1198,7 @@
- 			a_station = (StationEntity *)[self newShipWithName:@"coriolis-station"];
- 			if (![a_station isStation] || ![a_station validForAddToUniverse])
- 			{
--				OOLog(@"universe.setup.badStation", @"Could not create built-in Coriolis station! Generating a stationless system.");
-+				OOLog(@"universe.setup.badStation", @"%@", @"Could not create built-in Coriolis station! Generating a stationless system.");
- 				DESTROY(a_station);
- 			}
- 		}
-@@ -4340,7 +4340,7 @@
- 
- - (void) drawUniverse
- {
--	OOLog(@"universe.profile.draw",@"Begin draw");
-+	OOLog(@"universe.profile.draw", @"%@", @"Begin draw");
- 	if (!no_update)
- 	{
- 		@try
-@@ -4510,7 +4510,7 @@
- 				
- 					OOVerifyOpenGLState();
- 					OOCheckOpenGLErrors(@"Universe after setting up for opaque pass");
--					OOLog(@"universe.profile.draw",@"Begin opaque pass");
-+					OOLog(@"universe.profile.draw", @"%@", @"Begin opaque pass");
- 
- 				
- 					//		DRAW ALL THE OPAQUE ENTITIES
-@@ -4637,7 +4637,7 @@
- 			OOGLFrustum(-0.5, 0.5, -aspect*0.5, aspect*0.5, 1.0, MAX_CLEAR_DEPTH);
- 
- 			OOCheckOpenGLErrors(@"Universe after drawing entities");
--			OOLog(@"universe.profile.draw",@"Begin HUD");
-+			OOLog(@"universe.profile.draw", @"%@", @"Begin HUD");
- 			OOSetOpenGLState(OPENGL_STATE_OVERLAY);  // FIXME: should be redundant.
- 			if (EXPECT(!displayGUI || demoShipMode))
- 			{
-@@ -4733,7 +4733,7 @@
- 			}
- 		}
- 	}
--	OOLog(@"universe.profile.draw",@"End drawing");
-+	OOLog(@"universe.profile.draw", @"%@", @"End drawing");
- }
- 
- 
-@@ -5383,7 +5383,7 @@
- 	
- 	if (!e1)
- 	{
--		OOLog(kOOLogParameterError, @"***** No entity set in Universe getSafeVectorFromEntity:toDistance:fromPoint:");
-+		OOLog(kOOLogParameterError, @"%@", @"***** No entity set in Universe getSafeVectorFromEntity:toDistance:fromPoint:");
- 		return kZeroHPVector;
- 	}
- 	
-@@ -6495,7 +6495,7 @@
- {
- 	volatile OOTimeDelta delta_t = inDeltaT * [self timeAccelerationFactor];
- 	NSUInteger sessionID = _sessionID;
--	OOLog(@"universe.profile.update",@"Begin update");
-+	OOLog(@"universe.profile.update", @"%@", @"Begin update");
- 	if (EXPECT(!no_update))
- 	{
- 		next_repopulation -= delta_t;
-@@ -6778,7 +6778,7 @@
- 	[self prunePreloadingPlanetMaterials];
- #endif
- 
--	OOLog(@"universe.profile.update",@"Update complete");
-+	OOLog(@"universe.profile.update", @"%@", @"Update complete");
- }
- 
- 
-@@ -7621,7 +7621,7 @@
- 	static BOOL sysdataLocked = NO;
- 	if (sysdataLocked)
- 	{
--		OOLogERR(@"script.error", @"System properties cannot be set during 'systemInformationChanged' events to avoid infinite loops.");
-+		OOLogERR(@"script.error", @"%@", @"System properties cannot be set during 'systemInformationChanged' events to avoid infinite loops.");
- 		return;
- 	}
- 
-@@ -9131,14 +9131,14 @@
- {
- 	if (!ship)
- 	{
--		OOLog(kOOLogParameterError, @"***** No ship set in Universe getSunSkimStartPositionForShip:");
-+		OOLog(kOOLogParameterError, @"%@", @"***** No ship set in Universe getSunSkimStartPositionForShip:");
- 		return kZeroHPVector;
- 	}
- 	OOSunEntity* the_sun = [self sun];
- 	// get vector from sun position to ship
- 	if (!the_sun)
- 	{
--		OOLog(kOOLogInconsistentState, @"***** No sun set in Universe getSunSkimStartPositionForShip:");
-+		OOLog(kOOLogInconsistentState, @"%@", @"***** No sun set in Universe getSunSkimStartPositionForShip:");
- 		return kZeroHPVector;
- 	}
- 	HPVector v0 = the_sun->position;
-@@ -9161,13 +9161,13 @@
- 	OOSunEntity* the_sun = [self sun];
- 	if (!ship)
- 	{
--		OOLog(kOOLogParameterError, @"***** No ship set in Universe getSunSkimEndPositionForShip:");
-+		OOLog(kOOLogParameterError, @"%@", @"***** No ship set in Universe getSunSkimEndPositionForShip:");
- 		return kZeroHPVector;
- 	}
- 	// get vector from sun position to ship
- 	if (!the_sun)
- 	{
--		OOLog(kOOLogInconsistentState, @"***** No sun set in Universe getSunSkimEndPositionForShip:");
-+		OOLog(kOOLogInconsistentState, @"%@", @"***** No sun set in Universe getSunSkimEndPositionForShip:");
- 		return kZeroHPVector;
- 	}
- 	HPVector v0 = the_sun->position;
---- a/src/SDL/MyOpenGLView.m
-+++ b/src/SDL/MyOpenGLView.m
-@@ -66,7 +66,7 @@
- 	}
- 	else
- 	{
--		OOLog(@"display.mode.list.native.failed", @"SDL_GetWMInfo failed, defaulting to 1024x768 for native size");
-+		OOLog(@"display.mode.list.native.failed", @"%@", @"SDL_GetWMInfo failed, defaulting to 1024x768 for native size");
- 	}
- #elif OOLITE_WINDOWS
- 	nativeDisplayWidth = GetSystemMetrics(SM_CXSCREEN);
-@@ -180,7 +180,7 @@
- 
- 	// TODO: This code up to and including stickHandler really ought
- 	// not to be in this class.
--	OOLog(@"sdl.init", @"initialising SDL");
-+	OOLog(@"sdl.init", @"%@", @"initialising SDL");
- 	if (SDL_Init(SDL_INIT_VIDEO | SDL_INIT_AUDIO | SDL_INIT_JOYSTICK) < 0)
- 	{
- 		OOLog(@"sdl.init.failed", @"Unable to init SDL: %s\n", SDL_GetError());
-@@ -263,7 +263,7 @@
- 		SDL_GL_SetAttribute(SDL_GL_MULTISAMPLESAMPLES, 4);
- 	}
- 
--	OOLog(@"display.mode.list", @"CREATING MODE LIST");
-+	OOLog(@"display.mode.list", @"%@", @"CREATING MODE LIST");
- 	[self populateFullScreenModelist];
- 	currentSize = 0;
- 
-@@ -275,19 +275,19 @@
- 	firstScreen= (fullScreen) ? [self modeAsSize: currentSize] : currentWindowSize;
- 	viewSize = firstScreen;	// viewSize must be set prior to splash screen initialization
- 
--	OOLog(@"display.initGL",@"Trying 32-bit depth buffer");
-+	OOLog(@"display.initGL", @"%@", @"Trying 32-bit depth buffer");
- 	[self createSurface];
- 	if (surface == NULL)
- 	{
- 		// Retry with a 24-bit depth buffer
--		OOLog(@"display.initGL",@"Trying 24-bit depth buffer");
-+		OOLog(@"display.initGL", @"%@", @"Trying 24-bit depth buffer");
- 		SDL_GL_SetAttribute(SDL_GL_DEPTH_SIZE, 24);
- 		[self createSurface];
- 		if (surface == NULL)
- 		{
- 			// Still not working? One last go...
- 			// Retry, allowing 16-bit contexts.
--			OOLog(@"display.initGL",@"Trying 16-bit depth buffer");
-+			OOLog(@"display.initGL", @"%@", @"Trying 16-bit depth buffer");
- 			SDL_GL_SetAttribute(SDL_GL_RED_SIZE, 5);
- 			SDL_GL_SetAttribute(SDL_GL_GREEN_SIZE, 5);
- 			SDL_GL_SetAttribute(SDL_GL_BLUE_SIZE, 5);
-@@ -654,7 +654,7 @@
- 	if (image == NULL)
- 	{
- 		SDL_FreeSurface(image);
--		OOLogWARN(@"sdl.gameStart", @"image 'splash.bmp' not found!");
-+		OOLogWARN(@"sdl.gameStart", @"%@", @"image 'splash.bmp' not found!");
- 		[self endSplashScreen];
- 		return;
- 	}
-@@ -722,7 +722,7 @@
- 			texture_format = GL_BGR;
- 	} else {
- 		SDL_FreeSurface(image);
--		OOLog(@"Sdl.GameStart", @"----- Encoding error within image 'splash.bmp'");
-+		OOLog(@"Sdl.GameStart", @"%@", @"----- Encoding error within image 'splash.bmp'");
- 		[self endSplashScreen];
- 		return;
- 	}
-@@ -1167,7 +1167,7 @@
- 	infoPtr = png_create_info_struct(pngPtr);
- 	if (infoPtr == NULL) {
- 		png_destroy_write_struct(&pngPtr, (png_infopp)NULL);
--		OOLog(@"pngSaveSurface.info_struct.failed", @"png_create_info_struct error");
-+		OOLog(@"pngSaveSurface.info_struct.failed", @"%@", @"png_create_info_struct error");
- 		exit(-1);
- 	}
- 
-@@ -2158,13 +2158,13 @@
- 	modes=SDL_ListModes(NULL, SDL_FULLSCREEN|SDL_HWSURFACE);
- 	if(modes == (SDL_Rect **)NULL)
- 	{
--		OOLog(@"display.mode.list.none", @"SDL didn't return any screen modes");
-+		OOLog(@"display.mode.list.none", @"%@", @"SDL didn't return any screen modes");
- 		return;
- 	}
- 
- 	if(modes == (SDL_Rect **)-1)
- 	{
--		OOLog(@"display.mode.list.none", @"SDL claims 'all resolutions available' which is unhelpful in the extreme");
-+		OOLog(@"display.mode.list.none", @"%@", @"SDL claims 'all resolutions available' which is unhelpful in the extreme");
- 		return;
- 	}
- 
-@@ -2292,7 +2292,7 @@
- 		return NSMakeSize([[mode objectForKey: kOODisplayWidth] intValue],
- 				[[mode objectForKey: kOODisplayHeight] intValue]);
- 	}
--	OOLog(@"display.mode.unknown", @"Screen size unknown!");
-+	OOLog(@"display.mode.unknown", @"%@", @"Screen size unknown!");
- 	return NSMakeSize(800, 600);
- }
- 
---- a/src/SDL/OOSDLJoystickManager.m
-+++ b/src/SDL/OOSDLJoystickManager.m
-@@ -83,7 +83,7 @@
- 			rc=YES;
- 			break;
- 		default:
--			OOLog(@"handleSDLEvent.unknownEvent", @"JoystickHandler was sent an event it doesn't know");
-+			OOLog(@"handleSDLEvent.unknownEvent", @"%@", @"JoystickHandler was sent an event it doesn't know");
- 	}
- 	return rc;
- }
diff --git a/debian/patches/series b/debian/patches/series
index 1c607c3..bdd66ba 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,10 +1,7 @@
 use_byte_order_of_sys_param.patch
 debian_version_of_libmozjs.diff
-generate_planet_data.diff
 secure-format-log-string.diff
+secure-format-log-string-1.84.diff
 # gnustep_app_builder.diff
 avoid_date_cpp_macro.diff
-avoid_infinite_recursion_in_verify_descriptions.diff
-typo.diff
-fix-glib-cast.patch
 fix-desktop-file.diff
diff --git a/debian/patches/typo.diff b/debian/patches/typo.diff
deleted file mode 100644
index 47bf26d..0000000
--- a/debian/patches/typo.diff
+++ /dev/null
@@ -1,15 +0,0 @@
-Description : typo
-Author: Nicolas Boulenguez <nicolas at debian.org>
-Applied-Upstream: https://github.com/OoliteProject/oolite/commit/36931199ed50c6cf6cbf8d2995cfe3bc3886d821
-
---- a/src/Core/OOCacheManager.m
-+++ b/src/Core/OOCacheManager.m
-@@ -181,7 +181,7 @@
- 	}
- 	else
- 	{
--		OODebugLog(kOOLogDataCacheRetrieveFailed, @"Failed to retreive \"%@\" cache object %@ -- no such cache.", inCacheKey, inKey);
-+		OODebugLog(kOOLogDataCacheRetrieveFailed, @"Failed to retrieve \"%@\" cache object %@ -- no such cache.", inCacheKey, inKey);
- 	}
- 	
- 	return result;

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-games/oolite.git



More information about the Pkg-games-commits mailing list