static wi_boolean_t _wi_config_parse_string(wi_config_t *config, wi_string_t *string, wi_string_t **name, wi_string_t **value) { wi_array_t *array; array = wi_string_components_separated_by_string(string, WI_STR("=")); if(wi_array_count(array) != 2) return false; *name = wi_string_by_deleting_surrounding_whitespace(WI_ARRAY(array, 0)); *value = wi_string_by_deleting_surrounding_whitespace(WI_ARRAY(array, 1)); return true; }
void wi_error_set_libxml2_error(void) { xmlErrorPtr xml_error; xml_error = xmlGetLastError(); wi_error_set_error_with_string(WI_ERROR_DOMAIN_LIBXML2, xml_error->code, wi_string_by_deleting_surrounding_whitespace(wi_string_with_cstring(xml_error->message))); }
static wi_boolean_t _wi_settings_parse_setting(wi_settings_t *settings, wi_string_t *string) { wi_array_t *array; wi_string_t *name, *value; wi_boolean_t result = false; array = wi_string_components_separated_by_string(string, WI_STR("=")); if(wi_array_count(array) != 2) { wi_error_set_lib_error(WI_ERROR_SETTINGS_SYNTAXERROR); _wi_settings_log_error(settings, string); return false; } name = wi_string_by_deleting_surrounding_whitespace(WI_ARRAY(array, 0)); value = wi_string_by_deleting_surrounding_whitespace(WI_ARRAY(array, 1)); result = _wi_settings_set_value(settings, name, value); if(!result) _wi_settings_log_error(settings, name); return result; }
void wi_error_set_libxml2_error(void) { wi_error_t *error; wi_string_t *string; xmlErrorPtr xml_error; xml_error = xmlGetLastError(); error = _wi_error_get_error(); error->domain = WI_ERROR_DOMAIN_REGEX; error->code = xml_error->code; string = wi_string_by_deleting_surrounding_whitespace(wi_string_with_cstring(xml_error->message)); wi_release(error->string); error->string = wi_retain(string); }