mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2025-01-19 00:20:09 +00:00
snapshot: Get new GArray item directly
Instead of building it up ourselves, then coping it into the GArray and then getting the last element of that array.
This commit is contained in:
parent
ba9b0c6f7d
commit
f4f0f0e6a0
@ -112,17 +112,19 @@ gtk_snapshot_push_state (GtkSnapshot *snapshot,
|
||||
int translate_y,
|
||||
GtkSnapshotCollectFunc collect_func)
|
||||
{
|
||||
GtkSnapshotState state = { 0, };
|
||||
const gsize n_states = snapshot->state_stack->len;
|
||||
GtkSnapshotState *state;
|
||||
|
||||
state.translate_x = translate_x;
|
||||
state.translate_y = translate_y;
|
||||
state.collect_func = collect_func;
|
||||
state.start_node_index = snapshot->nodes->len;
|
||||
state.n_nodes = 0;
|
||||
g_array_set_size (snapshot->state_stack, n_states + 1);
|
||||
state = &g_array_index (snapshot->state_stack, GtkSnapshotState, n_states);
|
||||
|
||||
g_array_append_val (snapshot->state_stack, state);
|
||||
state->translate_x = translate_x;
|
||||
state->translate_y = translate_y;
|
||||
state->collect_func = collect_func;
|
||||
state->start_node_index = snapshot->nodes->len;
|
||||
state->n_nodes = 0;
|
||||
|
||||
return &g_array_index (snapshot->state_stack, GtkSnapshotState, snapshot->state_stack->len - 1);
|
||||
return state;
|
||||
}
|
||||
|
||||
static GtkSnapshotState *
|
||||
|
Loading…
Reference in New Issue
Block a user