161a162,164
> /* user side: 1-based idex; gedit internal: 0-based index */
> guint zero_based_line_pos = line_pos - 1;
>
165,170c168,169
< GtkTextIter iter;
<
< gtk_text_buffer_get_iter_at_line_offset (GTK_TEXT_BUFFER (doc),
< &iter,
< line_pos - 1,
< column_pos - 1);
---
> guint zero_based_column_pos = column_pos - 1;
> guint line_count = gtk_text_buffer_get_line_count (GTK_TEXT_BUFFER (doc));
172c171,180
< gtk_text_buffer_place_cursor (GTK_TEXT_BUFFER (doc), &iter);
---
> if (zero_based_line_pos < line_count)
> {
> /* In case line_pos is within the document, we can use gedit_document_goto_line_offset */
> gedit_document_goto_line_offset (doc, zero_based_line_pos, zero_based_column_pos);
> }
> else
> {
> /* go to the buffer end */
> gedit_document_goto_line (doc, zero_based_line_pos);
> }
176c184
< gedit_document_goto_line (doc, line_pos - 1);
---
> gedit_document_goto_line (doc, zero_based_line_pos);
The attached change should be made to gedit-commands-file.c, it fixes
the issue for already opened files.
I believe the other case (newly opened files) is related to
gedit-document.c, about line 1475.

