From: Rafał Miłecki <ra...@milecki.pl> This is static array with a size set to MAX_MOUNTED. Old code: 1) Was never using the last table entry/row 2) Was logging the same message for every mount entry above limit
This fixes off-by-one, moves limit check to the proper place and uses "break" when needed. Signed-off-by: Rafał Miłecki <ra...@milecki.pl> --- mount.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/mount.c b/mount.c index db77f10..9cb1a43 100644 --- a/mount.c +++ b/mount.c @@ -626,6 +626,12 @@ static void mount_check_mount_list(void) while(fgets(tmp, 256, fp) != NULL) { char *t, *t2; + + if (mounted_count + 1 > MAX_MOUNTED) { + log_printf("found more than %d mounts \n", MAX_MOUNTED); + break; + } + t = strstr(tmp, " "); if(t) { @@ -651,10 +657,8 @@ static void mount_check_mount_list(void) mounted[mounted_count][0], mounted[mounted_count][1], mounted[mounted_count][2]);*/ - if(mounted_count < MAX_MOUNTED - 1) - mounted_count++; - else - log_printf("found more than %d mounts \n", MAX_MOUNTED); + + mounted_count++; } fclose(fp); } -- 2.11.0 _______________________________________________ Lede-dev mailing list Lede-dev@lists.infradead.org http://lists.infradead.org/mailman/listinfo/lede-dev