Index: trunk/src/buffer.c =================================================================== --- trunk/src/buffer.c (revision 23693) +++ trunk/src/buffer.c (revision 23694) @@ -470,7 +470,7 @@ for (i = 0; i < num_layers; i++) { pcb_layer_t *layer = Buffer->Data->Layer + i; if (textlist_length(&layer->Text)) { - pcb_message(PCB_MSG_ERROR, _("You can't mirror a buffer that has text!\n")); + pcb_message(PCB_MSG_ERROR, "You can't mirror a buffer that has text!\n"); return; } } @@ -857,9 +857,9 @@ case F_Save: free_name = pcb_false; if (argc <= 1) { - name = pcb_gui->fileselect(_("Save Paste Buffer As ..."), - _("Choose a file to save the contents of the\n" - "paste buffer to.\n"), default_file, ".fp", "footprint", 0, NULL); + name = pcb_gui->fileselect("Save Paste Buffer As ...", + "Choose a file to save the contents of the\n" + "paste buffer to.\n", default_file, ".fp", "footprint", 0, NULL); if (default_file) { free(default_file); Index: trunk/src/change_act.c =================================================================== --- trunk/src/change_act.c (revision 23693) +++ trunk/src/change_act.c (revision 23694) @@ -90,7 +90,7 @@ int funcid = pcb_funchash_get(function, NULL); if (funcid == F_Object) { - pcb_hid_get_coords(_("Select an Object"), &x, &y, 0); + pcb_hid_get_coords("Select an Object", &x, &y, 0); got_coords = 1; type = pcb_search_screen(x, y, PCB_CHANGECLEARSIZE_TYPES, &ptr1, &ptr2, &ptr3); } @@ -97,7 +97,7 @@ if (strcmp(delta, "style") == 0) { if (!got_coords) { - pcb_hid_get_coords(_("Select an Object"), &x, &y, 0); + pcb_hid_get_coords("Select an Object", &x, &y, 0); got_coords = 1; } @@ -186,7 +186,7 @@ set_selected = value ? pcb_clr_selected_join : pcb_set_selected_join; } else { - pcb_message(PCB_MSG_ERROR, _("%s(): Flag \"%s\" is not valid\n"), cmd_name, flag_name); + pcb_message(PCB_MSG_ERROR, "%s(): Flag \"%s\" is not valid\n", cmd_name, flag_name); return; } @@ -201,7 +201,7 @@ if ((type = pcb_search_screen(x, y, PCB_CHANGESIZE_TYPES, &ptr1, &ptr2, &ptr3)) != PCB_OBJ_VOID) if (PCB_FLAG_TEST(PCB_FLAG_LOCK, (pcb_any_obj_t *) ptr2)) - pcb_message(PCB_MSG_WARNING, _("Sorry, the object is locked\n")); + pcb_message(PCB_MSG_WARNING, "Sorry, the object is locked\n"); if (set_object(type, ptr1, ptr2, ptr3)) pcb_board_set_changed_flag(pcb_true); break; @@ -307,7 +307,7 @@ { if (type != PCB_OBJ_VOID) if (PCB_FLAG_TEST(PCB_FLAG_LOCK, (pcb_any_obj_t *) ptr2)) - pcb_message(PCB_MSG_WARNING, _("Sorry, the object is locked\n")); + pcb_message(PCB_MSG_WARNING, "Sorry, the object is locked\n"); if (tostyle) { if (pcb_chg_obj_1st_size(type, ptr1, ptr2, ptr3, value, absolute)) pcb_board_set_changed_flag(pcb_true); @@ -383,7 +383,7 @@ if (funcid == F_Object) { pcb_coord_t x, y; - pcb_hid_get_coords(_("Select an Object"), &x, &y, 0); + pcb_hid_get_coords("Select an Object", &x, &y, 0); type = pcb_search_screen(x, y, PCB_CHANGE2NDSIZE_TYPES, &ptr1, &ptr2, &ptr3); } @@ -498,7 +498,7 @@ { pcb_coord_t x, y; void *ptr1, *ptr2, *ptr3; - pcb_hid_get_coords(_("Select an Object"), &x, &y, 0); + pcb_hid_get_coords("Select an Object", &x, &y, 0); type = op == F_Refdes ? PCB_OBJ_SUBC : PCB_CHANGENAME_TYPES; do_chg_name:; if ((type = pcb_search_screen(x, y, type, &ptr1, &ptr2, &ptr3)) != PCB_OBJ_VOID) { @@ -560,7 +560,7 @@ int type; void *ptr1, *ptr2, *ptr3; - pcb_hid_get_coords(_("Select an Object"), &x, &y, 0); + pcb_hid_get_coords("Select an Object", &x, &y, 0); if ((type = pcb_search_screen(x, y, PCB_CHANGEJOIN_TYPES, &ptr1, &ptr2, &ptr3)) != PCB_OBJ_VOID) if (pcb_chg_obj_join(type, ptr1, ptr2, ptr3)) pcb_board_set_changed_flag(pcb_true); @@ -608,7 +608,7 @@ pcb_coord_t x, y; int type; void *ptr1, *ptr2, *ptr3; - pcb_hid_get_coords(_("Select an Element"), &x, &y, 0); + pcb_hid_get_coords("Select an Element", &x, &y, 0); ptr3 = NULL; type = pcb_search_screen(x, y, PCB_CHANGENONETLIST_TYPES, &ptr1, &ptr2, &ptr3); @@ -864,7 +864,7 @@ { if (type != PCB_OBJ_VOID) { if (PCB_FLAG_TEST(PCB_FLAG_LOCK, (pcb_any_obj_t *) ptr2)) - pcb_message(PCB_MSG_WARNING, _("Sorry, the object is locked\n")); + pcb_message(PCB_MSG_WARNING, "Sorry, the object is locked\n"); else { if (pcb_chg_obj_angle(type, ptr1, ptr2, ptr3, which, value, absolute)) pcb_board_set_changed_flag(pcb_true); @@ -932,7 +932,7 @@ { if (type != PCB_OBJ_VOID) { if (PCB_FLAG_TEST(PCB_FLAG_LOCK, (pcb_any_obj_t *) ptr2)) - pcb_message(PCB_MSG_WARNING, _("Sorry, the object is locked\n")); + pcb_message(PCB_MSG_WARNING, "Sorry, the object is locked\n"); else { if (pcb_chg_obj_radius(type, ptr1, ptr2, ptr3, which, value, absolute)) pcb_board_set_changed_flag(pcb_true); Index: trunk/src/compat_fs.c =================================================================== --- trunk/src/compat_fs.c (revision 23693) +++ trunk/src/compat_fs.c (revision 23694) @@ -111,7 +111,7 @@ pid = fork(); if (pid < 0) { /* error */ - pcb_message(PCB_MSG_ERROR, _("Cannot fork!")); + pcb_message(PCB_MSG_ERROR, "Cannot fork!"); return 1; } else if (pid == 0) { @@ -265,7 +265,7 @@ } else { - fprintf(stderr, _("pcb_tempfile_unlink(): Unable to determine temp directory name from the temp file\n")); + fprintf(stderr, "pcb_tempfile_unlink(): Unable to determine temp directory name from the temp file\n"); fprintf(stderr, "pcb_tempfile_unlink(): \"%s\"\n", name); rc2 = -1; } @@ -286,7 +286,7 @@ int rc = unlink(name); if (rc != 0) { - fprintf(stderr, _("Failed to unlink \"%s\"\n"), name); + fprintf(stderr, "Failed to unlink \"%s\"\n", name); free(name); return rc; } Index: trunk/src/font.c =================================================================== --- trunk/src/font.c (revision 23693) +++ trunk/src/font.c (revision 23694) @@ -108,7 +108,7 @@ const char *s; gds_t buff; s = conf_concat_strlist(&conf_core.rc.default_font_file, &buff, NULL, ':'); - pcb_message(PCB_MSG_WARNING, _("Can't find font-symbol-file. Searched: '%s'; falling back to the embedded default font\n"), s); + pcb_message(PCB_MSG_WARNING, "Can't find font-symbol-file. Searched: '%s'; falling back to the embedded default font\n", s); pcb_font_load_internal(&pcb->fontkit.dflt); pcb_file_loaded_set_at("font", "default", "", "original default font"); gds_uninit(&buff); Index: trunk/src/gui_act.c =================================================================== --- trunk/src/gui_act.c (revision 23693) +++ trunk/src/gui_act.c (revision 23694) @@ -302,7 +302,7 @@ int type; void *ptr1, *ptr2, *ptr3; pcb_coord_t x, y; - pcb_hid_get_coords(_("Click on a subcircuit"), &x, &y, 0); + pcb_hid_get_coords("Click on a subcircuit", &x, &y, 0); /* toggle terminal ID print for subcircuit parts */ type = pcb_search_screen(x, y, PCB_OBJ_SUBC | PCB_OBJ_SUBC_PART | PCB_OBJ_PSTK | PCB_OBJ_LINE | PCB_OBJ_ARC | PCB_OBJ_POLY | PCB_OBJ_TEXT, (void **)&ptr1, (void **)&ptr2, (void **)&ptr3); @@ -696,7 +696,7 @@ pcb_marked.Y = pcb_crosshair.Y; } else - pcb_hid_get_coords(_("Click on new mark"), &pcb_marked.X, &pcb_marked.Y, 0); + pcb_hid_get_coords("Click on new mark", &pcb_marked.X, &pcb_marked.Y, 0); pcb_notify_mark_change(pcb_true); } } @@ -708,7 +708,7 @@ pcb_marked.Y = pcb_crosshair.Y; } else - pcb_hid_get_coords(_("Click on new mark"), &pcb_marked.X, &pcb_marked.Y, 0); + pcb_hid_get_coords("Click on new mark", &pcb_marked.X, &pcb_marked.Y, 0); pcb_notify_mark_change(pcb_true); } return 0; Index: trunk/src/main_act.c =================================================================== --- trunk/src/main_act.c (revision 23693) +++ trunk/src/main_act.c (revision 23694) @@ -377,7 +377,7 @@ PCB_ACT_CONVARG(1, FGW_STR, ExecuteFile, fname = argv[1].val.str); if ((fp = pcb_fopen(fname, "r")) == NULL) { - fprintf(stderr, _("Could not open actions file \"%s\".\n"), fname); + fprintf(stderr, "Could not open actions file \"%s\".\n", fname); return 1; } Index: trunk/src/obj_arc.c =================================================================== --- trunk/src/obj_arc.c (revision 23693) +++ trunk/src/obj_arc.c (revision 23694) @@ -657,7 +657,7 @@ pcb_arc_t *newone; if (PCB_FLAG_TEST(PCB_FLAG_LOCK, Arc)) { - pcb_message(PCB_MSG_WARNING, _("Sorry, the object is locked\n")); + pcb_message(PCB_MSG_WARNING, "Sorry, the object is locked\n"); return NULL; } if (ctx->move.dst_layer == Layer && Layer->meta.real.vis) Index: trunk/src/obj_line.c =================================================================== --- trunk/src/obj_line.c (revision 23693) +++ trunk/src/obj_line.c (revision 23694) @@ -703,7 +703,7 @@ void *ptr1, *ptr2, *ptr3; if (PCB_FLAG_TEST(PCB_FLAG_LOCK, Line)) { - pcb_message(PCB_MSG_WARNING, _("Sorry, the object is locked\n")); + pcb_message(PCB_MSG_WARNING, "Sorry, the object is locked\n"); return NULL; } if (ctx->move.dst_layer == Layer && Layer->meta.real.vis) Index: trunk/src/obj_poly.c =================================================================== --- trunk/src/obj_poly.c (revision 23693) +++ trunk/src/obj_poly.c (revision 23694) @@ -575,9 +575,9 @@ /* poly does not clear other polys */ pcb_message(PCB_MSG_WARNING, - _("To change the clearance of objects in a polygon, change \nthe objects, not the polygon.\n" + "To change the clearance of objects in a polygon, change \nthe objects, not the polygon.\n" "Alternatively, set the clearpolypoly flag on the polygon to \nallow it to clear other polygons.\n" - "Hint: To set a minimum clearance for a group of objects, \nselect them all then :MinClearGap(Selected,=10,mil)\n"), + "Hint: To set a minimum clearance for a group of objects, \nselect them all then :MinClearGap(Selected,=10,mil)\n", "Ok", NULL); return NULL; @@ -753,7 +753,7 @@ pcb_poly_t *newone; if (PCB_FLAG_TEST(PCB_FLAG_LOCK, Polygon)) { - pcb_message(PCB_MSG_WARNING, _("Sorry, the object is locked\n")); + pcb_message(PCB_MSG_WARNING, "Sorry, the object is locked\n"); return NULL; } if (Layer == ctx->move.dst_layer) Index: trunk/src/polygon.c =================================================================== --- trunk/src/polygon.c (revision 23693) +++ trunk/src/polygon.c (revision 23694) @@ -1491,7 +1491,7 @@ dx = coord_abs(pcb_crosshair.AttachedPolygon.Points[n - 1].X - pcb_crosshair.AttachedPolygon.Points[0].X); dy = coord_abs(pcb_crosshair.AttachedPolygon.Points[n - 1].Y - pcb_crosshair.AttachedPolygon.Points[0].Y); if (!(dx == 0 || dy == 0 || dx == dy)) { - pcb_message(PCB_MSG_ERROR, _("Cannot close polygon because 45 degree lines are requested.\n")); + pcb_message(PCB_MSG_ERROR, "Cannot close polygon because 45 degree lines are requested.\n"); return; } } @@ -1499,7 +1499,7 @@ pcb_draw(); } else - pcb_message(PCB_MSG_ERROR, _("A polygon has to have at least 3 points\n")); + pcb_message(PCB_MSG_ERROR, "A polygon has to have at least 3 points\n"); } static void poly_copy_data(pcb_poly_t *dst, pcb_poly_t *src) @@ -1569,7 +1569,7 @@ dx = coord_abs(pcb_crosshair.AttachedPolygon.Points[n - 1].X - pcb_crosshair.AttachedPolygon.Points[0].X); dy = coord_abs(pcb_crosshair.AttachedPolygon.Points[n - 1].Y - pcb_crosshair.AttachedPolygon.Points[0].Y); if (!(dx == 0 || dy == 0 || dx == dy)) { - pcb_message(PCB_MSG_ERROR, _("Cannot close polygon hole because 45 degree lines are requested.\n")); + pcb_message(PCB_MSG_ERROR, "Cannot close polygon hole because 45 degree lines are requested.\n"); return; } } @@ -1577,7 +1577,7 @@ pcb_draw(); } else - pcb_message(PCB_MSG_ERROR, _("A polygon hole has to have at least 3 points\n")); + pcb_message(PCB_MSG_ERROR, "A polygon hole has to have at least 3 points\n"); } /* --------------------------------------------------------------------------- Index: trunk/src/polygon_act.c =================================================================== --- trunk/src/polygon_act.c (revision 23693) +++ trunk/src/polygon_act.c (revision 23694) @@ -65,7 +65,7 @@ int type; void *ptr1, *ptr2, *ptr3; - pcb_hid_get_coords(_("Select an Object"), &x, &y, 0); + pcb_hid_get_coords("Select an Object", &x, &y, 0); if ((type = pcb_search_screen(x, y, PCB_OBJ_POLY, &ptr1, &ptr2, &ptr3)) != PCB_OBJ_VOID) { pcb_poly_morph((pcb_layer_t *) ptr1, (pcb_poly_t *) ptr3); pcb_draw(); Index: trunk/src/rats_act.c =================================================================== --- trunk/src/rats_act.c (revision 23693) +++ trunk/src/rats_act.c (revision 23694) @@ -120,7 +120,7 @@ pcb_coord_t x, y; unsigned long res; pcb_find_t fctx; - pcb_hid_get_coords(_("Click on a connection"), &x, &y, 0); + pcb_hid_get_coords("Click on a connection", &x, &y, 0); memset(&fctx, 0, sizeof(fctx)); fctx.flag_set = PCB_FLAG_FOUND; fctx.flag_chg_undoable = 1; Index: trunk/src/rotate.c =================================================================== --- trunk/src/rotate.c (revision 23693) +++ trunk/src/rotate.c (revision 23694) @@ -141,7 +141,7 @@ void *ptr1, *ptr2, *ptr3; if ((type = pcb_search_screen(X, Y, PCB_ROTATE_TYPES | PCB_LOOSE_SUBC, &ptr1, &ptr2, &ptr3)) != PCB_OBJ_VOID) { if (PCB_FLAG_TEST(PCB_FLAG_LOCK, (pcb_arc_t *) ptr2)) { - pcb_message(PCB_MSG_WARNING, _("Sorry, the object is locked\n")); + pcb_message(PCB_MSG_WARNING, "Sorry, the object is locked\n"); return; } pcb_event(PCB_EVENT_RUBBER_RESET, NULL); @@ -160,7 +160,7 @@ void *ptr1, *ptr2, *ptr3; if ((type = pcb_search_screen(X, Y, PCB_ROTATE_TYPES | PCB_LOOSE_SUBC, &ptr1, &ptr2, &ptr3)) != PCB_OBJ_VOID) { if (PCB_FLAG_TEST(PCB_FLAG_LOCK, (pcb_arc_t *) ptr2)) { - pcb_message(PCB_MSG_WARNING, _("Sorry, the object is locked\n")); + pcb_message(PCB_MSG_WARNING, "Sorry, the object is locked\n"); return; } pcb_event(PCB_EVENT_RUBBER_RESET, NULL); Index: trunk/src/route_style.c =================================================================== --- trunk/src/route_style.c (revision 23693) +++ trunk/src/route_style.c (revision 23694) @@ -214,7 +214,7 @@ case PCB_OBJ_ARC: return pcb_get_style_size(F_SelectedArcs, out, 0, size_id); } - pcb_message(PCB_MSG_ERROR, _("Sorry, can't fetch the style of that object type (%x)\n"), type); + pcb_message(PCB_MSG_ERROR, "Sorry, can't fetch the style of that object type (%x)\n", type); return -1; case F_SelectedPads: if (size_id != 2) /* don't mess with pad size */ @@ -240,7 +240,7 @@ return 0; case F_SelectedTexts: case F_SelectedNames: - pcb_message(PCB_MSG_ERROR, _("Sorry, can't change style of every selected object\n")); + pcb_message(PCB_MSG_ERROR, "Sorry, can't change style of every selected object\n"); return -1; } return 0; Index: trunk/src/select_act.c =================================================================== --- trunk/src/select_act.c (revision 23693) +++ trunk/src/select_act.c (revision 23694) @@ -134,7 +134,7 @@ pcb_tool_note.Buffer = conf_core.editor.buffer_number; pcb_buffer_set_number(PCB_MAX_BUFFER - 1); pcb_buffer_clear(PCB, PCB_PASTEBUFFER); - pcb_hid_get_coords(_("Select the Subcircuit's Origin (mark) Location"), &x, &y, 0); + pcb_hid_get_coords("Select the Subcircuit's Origin (mark) Location", &x, &y, 0); x = pcb_grid_fit(x, PCB->Grid, PCB->GridOffsetX); y = pcb_grid_fit(y, PCB->Grid, PCB->GridOffsetY); pcb_buffer_add_selected(PCB, PCB_PASTEBUFFER, x, y, pcb_true); Index: trunk/src/tool.c =================================================================== --- trunk/src/tool.c (revision 23693) +++ trunk/src/tool.c (revision 23694) @@ -126,7 +126,7 @@ recursing = pcb_true; if (PCB->RatDraw && !pcb_tool_get(id)->allow_when_drawing_ratlines) { - pcb_message(PCB_MSG_WARNING, _("That mode is NOT allowed when drawing ratlines!\n")); + pcb_message(PCB_MSG_WARNING, "That mode is NOT allowed when drawing ratlines!\n"); id = PCB_MODE_NO; } Index: trunk/src/tool_insert.c =================================================================== --- trunk/src/tool_insert.c (revision 23693) +++ trunk/src/tool_insert.c (revision 23694) @@ -72,7 +72,7 @@ if (pcb_crosshair.AttachedObject.Type != PCB_OBJ_VOID) { if (PCB_FLAG_TEST(PCB_FLAG_LOCK, (pcb_poly_t *) pcb_crosshair.AttachedObject.Ptr2)) { - pcb_message(PCB_MSG_WARNING, _("Sorry, the object is locked\n")); + pcb_message(PCB_MSG_WARNING, "Sorry, the object is locked\n"); pcb_crosshair.AttachedObject.Type = PCB_OBJ_VOID; break; } Index: trunk/src/tool_move.c =================================================================== --- trunk/src/tool_move.c (revision 23693) +++ trunk/src/tool_move.c (revision 23694) @@ -65,7 +65,7 @@ &pcb_crosshair.AttachedObject.Ptr1, &pcb_crosshair.AttachedObject.Ptr2, &pcb_crosshair.AttachedObject.Ptr3); if (pcb_crosshair.AttachedObject.Type != PCB_OBJ_VOID) { if (PCB_FLAG_TEST(PCB_FLAG_LOCK, (pcb_any_obj_t *) pcb_crosshair.AttachedObject.Ptr2)) { - pcb_message(PCB_MSG_WARNING, _("Sorry, the object is locked\n")); + pcb_message(PCB_MSG_WARNING, "Sorry, the object is locked\n"); pcb_crosshair.AttachedObject.Type = PCB_OBJ_VOID; } else Index: trunk/src/tool_polyhole.c =================================================================== --- trunk/src/tool_polyhole.c (revision 23693) +++ trunk/src/tool_polyhole.c (revision 23694) @@ -68,7 +68,7 @@ if (PCB_FLAG_TEST(PCB_FLAG_LOCK, (pcb_poly_t *) pcb_crosshair.AttachedObject.Ptr2)) { - pcb_message(PCB_MSG_WARNING, _("Sorry, the object is locked\n")); + pcb_message(PCB_MSG_WARNING, "Sorry, the object is locked\n"); pcb_crosshair.AttachedObject.Type = PCB_OBJ_VOID; break; } Index: trunk/src/tool_remove.c =================================================================== --- trunk/src/tool_remove.c (revision 23693) +++ trunk/src/tool_remove.c (revision 23694) @@ -52,7 +52,7 @@ if ((type = pcb_search_screen(pcb_tool_note.X, pcb_tool_note.Y, PCB_REMOVE_TYPES | PCB_LOOSE_SUBC, &ptr1, &ptr2, &ptr3)) != PCB_OBJ_VOID) { if (PCB_FLAG_TEST(PCB_FLAG_LOCK, (pcb_line_t *) ptr2)) { - pcb_message(PCB_MSG_WARNING, _("Sorry, the object is locked\n")); + pcb_message(PCB_MSG_WARNING, "Sorry, the object is locked\n"); return; } Index: trunk/src/undo.c =================================================================== --- trunk/src/undo.c (revision 23693) +++ trunk/src/undo.c (revision 23694) @@ -116,7 +116,7 @@ pcb_undo_unlock(); if (res != 0) - pcb_message(PCB_MSG_ERROR, _("ERROR: Failed to undo some operations\n")); + pcb_message(PCB_MSG_ERROR, "ERROR: Failed to undo some operations\n"); else if (pcb_undo_and_draw) pcb_draw(); @@ -132,14 +132,14 @@ pcb_undo_and_draw = draw; if (pcb_uundo.num_redo == 0) { - pcb_message(PCB_MSG_INFO, _("Nothing to redo. Perhaps changes have been made since last undo\n")); + pcb_message(PCB_MSG_INFO, "Nothing to redo. Perhaps changes have been made since last undo\n"); return 0; } if ((pcb_uundo.tail != NULL) && (pcb_uundo.tail->next != NULL) && (pcb_uundo.tail->next->serial > pcb_uundo.serial)) { - pcb_message(PCB_MSG_ERROR, _("ERROR: Bad undo serial number %d in redo stack - expecting %d or higher\n" - " Please save your work and report this bug.\n"), pcb_uundo.tail->next->serial, pcb_uundo.serial); + pcb_message(PCB_MSG_ERROR, "ERROR: Bad undo serial number %d in redo stack - expecting %d or higher\n" + " Please save your work and report this bug.\n", pcb_uundo.tail->next->serial, pcb_uundo.serial); /* It is likely that the serial number got corrupted through some bad * use of the pcb_undo_save_serial() / pcb_undo_restore_serial() APIs. @@ -160,7 +160,7 @@ pcb_undo_unlock(); if (res != 0) - pcb_message(PCB_MSG_ERROR, _("ERROR: Failed to redo some operations\n")); + pcb_message(PCB_MSG_ERROR, "ERROR: Failed to redo some operations\n"); else if (pcb_undo_and_draw) pcb_draw(); @@ -175,7 +175,7 @@ void pcb_undo_restore_serial(void) { if (added_undo_between_increment_and_restore) - pcb_message(PCB_MSG_ERROR, _("ERROR: Operations were added to the Undo stack with an incorrect serial number\n")); + pcb_message(PCB_MSG_ERROR, "ERROR: Operations were added to the Undo stack with an incorrect serial number\n"); between_increment_and_restore = pcb_false; added_undo_between_increment_and_restore = pcb_false; uundo_restore_serial(&pcb_uundo);