### Godot version

4.2 dev3

### System information

Windows 10.0.19045 - Vulkan (Forward+) - dedicated NVIDIA GeForce GTX 1060 (NVIDIA; 30.0.15.1403) - Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz (8 Threads)

### Issue description

Basically variation of #33995

### Steps to reproduce

1. Open 2D scene
2. Drag a guide
3. Undo
4. Save

### Minimal reproduction project

N/A
if (drag_type == DRAG_NONE || drag_selection.is_empty() || !drag_selection.front()->get()) {
		return;
	}
	String transform_message;
	Transform2D current_transform = drag_selection.front()->get()->get_global_transform();
	double snap = EDITOR_GET("interface/inspector/default_float_step");
	int snap_step_decimals = Math::range_step_decimals(snap);
#define FORMAT(value) (TS->format_number(String::num(value, snap_step_decimals)))
	switch (drag_type) {
		case DRAG_MOVE:
		case DRAG_MOVE_X:
		case DRAG_MOVE_Y: {
			Vector2 delta = current_transform.get_origin() - original_transform.get_origin();
			if (drag_type == DRAG_MOVE) {
				transform_message = TTR("Moving:") + " (" + FORMAT(delta.x) + ", " + FORMAT(delta.y) + ") px";
			} else if (drag_type == DRAG_MOVE_X) {
				transform_message = TTR("Moving:") + " " + FORMAT(delta.x) + " px";
			} else if (drag_type == DRAG_MOVE_Y) {
				transform_message = TTR("Moving:") + " " + FORMAT(delta.y) + " px";
			}
		} break;
		case DRAG_ROTATE: {
			real_t delta = Math::rad_to_deg(current_transform.get_rotation() - original_transform.get_rotation());