diff --git a/libs/canvas/canvas/types.h b/libs/canvas/canvas/types.h index df40e1fbec..21f97d1a8a 100644 --- a/libs/canvas/canvas/types.h +++ b/libs/canvas/canvas/types.h @@ -225,15 +225,16 @@ struct FourDimensions { /* CSS style defaults: see https://developer.mozilla.org/en-US/docs/Web/CSS/Shorthand_properties */ - std::vector args; + Distance args[4]; + uint32_t nargs = 1; - args.push_back (u); + args[0] = u; - if (r >= 0) { args.push_back (r); } - if (d >= 0) { args.push_back (d); } - if (l >= 0) { args.push_back (l); } + if (r >= 0) { args[1] = r; ++nargs; } + if (d >= 0) { args[2] = d; ++nargs; } + if (l >= 0) { args[3] = l; ++nargs; } - switch (args.size()) { + switch (nargs) { case 1: up = right = down = left = args[0]; break;