nishbox/engine/version.c
2025-03-29 13:55:47 +09:00

39 lines
697 B
C

/* Interface */
#include "nb_version.h"
/* NishBox */
/* External library */
/* Standard */
#include <string.h>
#include <stdlib.h>
#define NB_VERSION "1.0.0"
void nb_get_version(nb_version_t* version) {
char* cpstr = malloc(strlen(NB_VERSION) + 1);
int i;
int incr = 0;
int old = 0;
strcpy(cpstr, NB_VERSION);
strcpy(version->full, NB_VERSION);
for(i = 0;; i++) {
if(cpstr[i] == '.' || cpstr[i] == 0) {
int num;
cpstr[i] = 0;
num = atoi(cpstr + old);
if(incr == 0) {
version->major = num;
} else if(incr == 1) {
version->minor = num;
} else if(incr == 2) {
version->patch = num;
}
old = i + 1;
incr++;
if(incr == 3) break;
}
}
}