kuroda_fix.txt

text/plain

Filename: kuroda_fix.txt
Type: text/plain
Part: 0
Message: RE: Add pg_get_injection_points() for information of injection points
diff --git a/src/backend/utils/misc/injection_point.c b/src/backend/utils/misc/injection_point.c
index bf1a49f7472..ea7e6dba521 100644
--- a/src/backend/utils/misc/injection_point.c
+++ b/src/backend/utils/misc/injection_point.c
@@ -596,6 +596,7 @@ InjectionPointList(uint32 *num_points)
 #ifdef USE_INJECTION_POINTS
 	InjectionPointData *result;
 	uint32		max_inuse;
+	int			cur_pos = 0;
 
 	LWLockAcquire(InjectionPointLock, LW_SHARED);
 
@@ -619,14 +620,16 @@ InjectionPointList(uint32 *num_points)
 		if (generation % 2 == 0)
 			continue;
 
-		result[idx].name = pstrdup(entry->name);
-		result[idx].library = pstrdup(entry->library);
-		result[idx].function = pstrdup(entry->function);
-		(*num_points)++;
+		result[cur_pos].name = pstrdup(entry->name);
+		result[cur_pos].library = pstrdup(entry->library);
+		result[cur_pos].function = pstrdup(entry->function);
+		cur_pos++;
 	}
 
 	LWLockRelease(InjectionPointLock);
 
+	*num_points = cur_pos;
+
 	return result;
 
 #else