Fix off-by-one in pg_xlogdump -r option.
authorHeikki Linnakangas <heikki.linnakangas@iki.fi>
Tue, 4 Jun 2013 15:51:43 +0000 (18:51 +0300)
committerHeikki Linnakangas <heikki.linnakangas@iki.fi>
Tue, 4 Jun 2013 15:51:43 +0000 (18:51 +0300)
Because of the bug, -r would not accept the rmgr with the highest ID.

contrib/pg_xlogdump/pg_xlogdump.c

index 70dc8d15d5006fdaa8ab9194c31a57e6c7f9e05c..24ca4fa8552397c09ee88f894cf96b6a69e4e510 100644 (file)
@@ -75,7 +75,7 @@ print_rmgr_list(void)
 {
        int                     i;
 
-       for (i = 0; i < RM_MAX_ID + 1; i++)
+       for (i = 0; i <= RM_MAX_ID; i++)
        {
                printf("%s\n", RmgrDescTable[i].rm_name);
        }
@@ -492,7 +492,7 @@ main(int argc, char **argv)
                                                exit(EXIT_SUCCESS);
                                        }
 
-                                       for (i = 0; i < RM_MAX_ID; i++)
+                                       for (i = 0; i <= RM_MAX_ID; i++)
                                        {
                                                if (pg_strcasecmp(optarg, RmgrDescTable[i].rm_name) == 0)
                                                {