Browse Source

Merge branch 'minergate' into bfgminer-4.10.x

Luke Dashjr 11 years ago
parent
commit
b592af3c8d
1 changed files with 9 additions and 3 deletions
  1. 9 3
      driver-minergate.c

+ 9 - 3
driver-minergate.c

@@ -578,7 +578,7 @@ bool minergate_get_stats(struct cgpu_info * const dev)
 		{
 		{
 			long nums[0x80];
 			long nums[0x80];
 			char *endptr;
 			char *endptr;
-			unsigned i;
+			int i;
 			float max_temp = 0;
 			float max_temp = 0;
 			for (i = 0; 1; ++i)
 			for (i = 0; 1; ++i)
 			{
 			{
@@ -596,8 +596,14 @@ bool minergate_get_stats(struct cgpu_info * const dev)
 				p = endptr;
 				p = endptr;
 			}
 			}
 			i -= skip_stats;
 			i -= skip_stats;
-			long *new_stats = malloc(sizeof(*state->stats) * i);
-			memcpy(new_stats, &nums[skip_stats], sizeof(*nums) * i);
+			long *new_stats;
+			if (likely(i > 0))
+			{
+				new_stats = malloc(sizeof(*state->stats) * i);
+				memcpy(new_stats, &nums[skip_stats], sizeof(*nums) * i);
+			}
+			else
+				new_stats = NULL;
 			mutex_lock(&dev->device_mutex);
 			mutex_lock(&dev->device_mutex);
 			free(state->stats);
 			free(state->stats);
 			state->stats = new_stats;
 			state->stats = new_stats;