mirror of
https://github.com/weechat/weechat.git
synced 2026-07-01 23:36:37 +02:00
Save last read line (for marker) within /upgrade
This commit is contained in:
@@ -151,7 +151,8 @@ upgrade_weechat_save_buffers (struct t_upgrade_file *upgrade_file)
|
||||
ptr_infolist = infolist_new ();
|
||||
if (!ptr_infolist)
|
||||
return 0;
|
||||
if (!gui_buffer_line_add_to_infolist (ptr_infolist, ptr_line))
|
||||
if (!gui_buffer_line_add_to_infolist (ptr_infolist,
|
||||
ptr_buffer, ptr_line))
|
||||
{
|
||||
infolist_free (ptr_infolist);
|
||||
return 0;
|
||||
@@ -442,6 +443,8 @@ upgrade_weechat_read_cb (int object_id,
|
||||
{
|
||||
new_line->highlight = infolist_integer (infolist, "highlight");
|
||||
}
|
||||
if (infolist_integer (infolist, "last_read_line"))
|
||||
upgrade_current_buffer->last_read_line = new_line;
|
||||
}
|
||||
break;
|
||||
case UPGRADE_WEECHAT_TYPE_NICKLIST:
|
||||
|
||||
@@ -1565,6 +1565,7 @@ gui_buffer_add_to_infolist (struct t_infolist *infolist,
|
||||
|
||||
int
|
||||
gui_buffer_line_add_to_infolist (struct t_infolist *infolist,
|
||||
struct t_gui_buffer *buffer,
|
||||
struct t_gui_line *line)
|
||||
{
|
||||
struct t_infolist_item *ptr_item;
|
||||
@@ -1622,6 +1623,9 @@ gui_buffer_line_add_to_infolist (struct t_infolist *infolist,
|
||||
return 0;
|
||||
if (!infolist_new_var_string (ptr_item, "message", line->message))
|
||||
return 0;
|
||||
if (!infolist_new_var_integer (ptr_item, "last_read_line",
|
||||
(buffer->last_read_line == line) ? 1 : 0))
|
||||
return 0;
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -245,6 +245,7 @@ extern void gui_buffer_move_to_number (struct t_gui_buffer *buffer, int number);
|
||||
extern int gui_buffer_add_to_infolist (struct t_infolist *infolist,
|
||||
struct t_gui_buffer *buffer);
|
||||
extern int gui_buffer_line_add_to_infolist (struct t_infolist *infolist,
|
||||
struct t_gui_buffer *buffer,
|
||||
struct t_gui_line *line);
|
||||
extern void gui_buffer_dump_hexa (struct t_gui_buffer *buffer);
|
||||
extern void gui_buffer_print_log ();
|
||||
|
||||
@@ -353,7 +353,8 @@ plugin_api_infolist_get_internal (void *data, const char *infolist_name,
|
||||
for (ptr_line = ((struct t_gui_buffer *)pointer)->lines; ptr_line;
|
||||
ptr_line = ptr_line->next_line)
|
||||
{
|
||||
if (!gui_buffer_line_add_to_infolist (ptr_infolist, ptr_line))
|
||||
if (!gui_buffer_line_add_to_infolist (ptr_infolist,
|
||||
pointer, ptr_line))
|
||||
{
|
||||
infolist_free (ptr_infolist);
|
||||
return NULL;
|
||||
|
||||
Reference in New Issue
Block a user