bintools/rcomp/src/main.cpp
changeset 640 ac0bbc1e5d79
parent 626 ac03b93ca9c4
--- a/bintools/rcomp/src/main.cpp	Mon Sep 06 09:57:24 2010 +0100
+++ b/bintools/rcomp/src/main.cpp	Mon Sep 13 13:11:19 2010 +0800
@@ -576,9 +576,10 @@
 			MOFF; cout << uidcrcTool << " " << uidcrcUIDs[0] << " " << uidcrcUIDs[1] << " " << uidcrcUIDs[2] << " " << DataOutputFileName.GetAssertedNonEmptyBuffer(); cout << endl; MON;
 			}
 
-		char uidcrc_params[512];
+		int namelen = strlen(uidcrcTool) + strlen(uidcrcUIDs[0]) * 3 + DataOutputFileName.Length() + 10; 
+		char *uidcrc_params = new char[namelen];
 		const int ret = snprintf(uidcrc_params,
-					 sizeof(uidcrc_params),
+					 namelen,
 					 "%s %s %s %s %s",
 					 uidcrcTool,
 					 uidcrcUIDs[0],
@@ -596,6 +597,8 @@
 			cerr << "Failed to write UIDs to " << DataOutputFileName << endl;
 			exit(error);
 			}
+		delete[] uidcrc_params;
+
 		RCBinaryStream RSCStream;
 		RSCStream.OpenForAppend(DataOutputFileName);
 		if(! RSCStream.IsOpen())