EMILE/libemile/emile_second_remove_property.c

37 lines
882 B
C

/*
*
* (c) 2005 Laurent Vivier <LaurentVivier@wanadoo.fr>
*
*/
#include <stdio.h>
#include <string.h>
#include "libemile.h"
void emile_second_remove_property(char *configuration, char *name)
{
int index = 0;
int current = 0;
char current_name[256];
char current_property[256];
while (configuration[index])
{
index = emile_second_get_next_property(configuration, index, current_name, current_property);
if (strcmp(name, current_name) != 0)
{
memcpy(configuration + current, current_name, strlen(current_name));
current += strlen(current_name);
configuration[current++] = ' ';
memcpy(configuration + current, current_property, strlen(current_property));
current += strlen(current_property);
if (configuration[index])
configuration[current++] = '\n';
}
}
if (configuration[current-1] == '\n')
current--;
configuration[current++] = 0;
}