Ejemplo n.º 1
0
static void free_config(struct sway_config *config) {
	int i;
	for (i = 0; i < config->symbols->length; ++i) {
		free_variable(config->symbols->items[i]);
	}
	list_free(config->symbols);

	for (i = 0; i < config->modes->length; ++i) {
		free_mode(config->modes->items[i]);
	}
	list_free(config->modes);

	free_flat_list(config->cmd_queue);

	for (i = 0; i < config->workspace_outputs->length; ++i) {
		free_workspace_output(config->workspace_outputs->items[i]);
	}
	list_free(config->workspace_outputs);

	for (i = 0; i < config->criteria->length; ++i) {
		free_criteria(config->criteria->items[i]);
	}
	list_free(config->criteria);

	for (i = 0; i < config->output_configs->length; ++i) {
		free_output_config(config->output_configs->items[i]);
	}
	list_free(config->output_configs);
	free(config);
}
Ejemplo n.º 2
0
Archivo: config.c Proyecto: ffa7a7/sway
void free_config(struct sway_config *config) {
	int i;
	for (i = 0; i < config->modes->length; ++i) {
		free_mode((struct sway_mode *)config->modes->items[i]);
	}
	free_flat_list(config->modes);
	for (i = 0; i < config->workspace_outputs->length; ++i) {
		struct workspace_output *wso = config->workspace_outputs->items[i];
		free(wso->output);
		free(wso->workspace);
	}
	free_flat_list(config->workspace_outputs);
	free_flat_list(config->cmd_queue);
	for (i = 0; i < config->symbols->length; ++i) {
		struct sway_variable *sym = config->symbols->items[i];
		free(sym->name);
		free(sym->value);
	}
	free_flat_list(config->symbols);
}
Ejemplo n.º 3
0
void free_config(struct sway_config *config) {
	if (!config) {
		return;
	}
	int i;
	for (i = 0; config->symbols && i < config->symbols->length; ++i) {
		free_variable(config->symbols->items[i]);
	}
	list_free(config->symbols);

	for (i = 0; config->modes && i < config->modes->length; ++i) {
		free_mode(config->modes->items[i]);
	}
	list_free(config->modes);

	for (i = 0; config->bars && i < config->bars->length; ++i) {
		free_bar(config->bars->items[i]);
	}
	list_free(config->bars);

	free_flat_list(config->cmd_queue);

	for (i = 0; config->workspace_outputs && i < config->workspace_outputs->length; ++i) {
		free_workspace_output(config->workspace_outputs->items[i]);
	}
	list_free(config->workspace_outputs);

	for (i = 0; config->pid_workspaces && i < config->pid_workspaces->length; ++i) {
		free_pid_workspace(config->pid_workspaces->items[i]);
	}
	list_free(config->pid_workspaces);

	for (i = 0; config->criteria && i < config->criteria->length; ++i) {
		free_criteria(config->criteria->items[i]);
	}
	list_free(config->criteria);

	for (i = 0; config->input_configs && i < config->input_configs->length; ++i) {
		free_input_config(config->input_configs->items[i]);
	}
	list_free(config->input_configs);

	for (i = 0; config->output_configs && i < config->output_configs->length; ++i) {
		free_output_config(config->output_configs->items[i]);
	}
	list_free(config->output_configs);

	for (i = 0; config->command_policies && i < config->command_policies->length; ++i) {
		free_command_policy(config->command_policies->items[i]);
	}
	list_free(config->command_policies);

	for (i = 0; config->feature_policies && i < config->feature_policies->length; ++i) {
		free_feature_policy(config->feature_policies->items[i]);
	}
	list_free(config->feature_policies);

	list_free(config->active_bar_modifiers);
	free_flat_list(config->config_chain);
	free(config->font);
	free(config->floating_scroll_up_cmd);
	free(config->floating_scroll_down_cmd);
	free(config->floating_scroll_left_cmd);
	free(config->floating_scroll_right_cmd);
	free(config);
}