MCPcopy Create free account
hub / github.com/ClusterLabs/pacemaker / increment_clone

Function increment_clone

pengine/native.c:2163–2230  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2161#include <../lib/pengine/unpack.h>
2162#define set_char(x) last_rsc_id[lpc] = x; complete = TRUE;
2163static char *
2164increment_clone(char *last_rsc_id)
2165{
2166 int lpc = 0;
2167 int len = 0;
2168 char *tmp = NULL;
2169 gboolean complete = FALSE;
2170
2171 CRM_CHECK(last_rsc_id != NULL, return NULL);
2172 if (last_rsc_id != NULL) {
2173 len = strlen(last_rsc_id);
2174 }
2175
2176 lpc = len - 1;
2177 while (complete == FALSE && lpc > 0) {
2178 switch (last_rsc_id[lpc]) {
2179 case 0:
2180 lpc--;
2181 break;
2182 case '0':
2183 set_char('1');
2184 break;
2185 case '1':
2186 set_char('2');
2187 break;
2188 case '2':
2189 set_char('3');
2190 break;
2191 case '3':
2192 set_char('4');
2193 break;
2194 case '4':
2195 set_char('5');
2196 break;
2197 case '5':
2198 set_char('6');
2199 break;
2200 case '6':
2201 set_char('7');
2202 break;
2203 case '7':
2204 set_char('8');
2205 break;
2206 case '8':
2207 set_char('9');
2208 break;
2209 case '9':
2210 last_rsc_id[lpc] = '0';
2211 lpc--;
2212 break;
2213 case ':':
2214 tmp = last_rsc_id;
2215 last_rsc_id = calloc(1, len + 2);
2216 memcpy(last_rsc_id, tmp, len);
2217 last_rsc_id[++lpc] = '1';
2218 last_rsc_id[len] = '0';
2219 last_rsc_id[len + 1] = 0;
2220 complete = TRUE;

Callers 1

probe_grouped_cloneFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected