# HG changeset patch
# User Teemu Piippo <crimsondusk64@gmail.com>
# Date 1396209025 -10800
# Node ID ad33901eb4f6acb01298886183855bd5df69c8b7
# Parent  4ef6734f09ff8909a6e2c83807d52e8cffc9c71c
- added the branch name to the first line of the generated gitinfo.h to trigger regeneration on branch switch

diff -r 4ef6734f09ff -r ad33901eb4f6 updaterevision/updaterevision.c
--- a/updaterevision/updaterevision.c	Sun Mar 30 22:14:43 2014 +0300
+++ b/updaterevision/updaterevision.c	Sun Mar 30 22:50:25 2014 +0300
@@ -106,7 +106,8 @@
 		if (fgets(lasthash, sizeof lasthash, stream) == lasthash)
 		{
 			stripnl(lasthash);
-			if (strcmp(hash, lasthash + 3) == 0)
+			if (strncmp(hash, lasthash + 3, 40) == 0 &&
+				strcmp(branch, lasthash + 44) == 0)
 			{
 				needupdate = 0;
 			}
@@ -122,7 +123,7 @@
 			return 1;
 		}
 		fprintf(stream,
-"// %s\n"
+"// %s %s\n"
 "//\n"
 "// This file was automatically generated by the\n"
 "// updaterevision tool. Do not edit by hand.\n"
@@ -131,13 +132,13 @@
 "#define GIT_HASH \"%s\"\n"
 "#define GIT_TIME \"%s\"\n"
 "#define GIT_BRANCH \"%s\"\n",
-			hash, vertag, hash, lastlog, branch);
+			hash, branch, vertag, hash, lastlog, branch);
 		fclose(stream);
-		fprintf(stderr, "%s updated to commit %s.\n", argv[1], vertag);
+		fprintf(stderr, "%s updated to commit %s (%s).\n", argv[1], vertag, branch);
 	}
 	else
 	{
-		fprintf (stderr, "%s is up to date at commit %s.\n", argv[1], vertag);
+		fprintf (stderr, "%s is up to date at commit %s (%s).\n", argv[1], vertag, branch);
 	}
 
 	return 0;