| 88 } |
88 } |
| 89 |
89 |
| 90 static void |
90 static void |
| 91 _pidgin_about_dialog_load_main_page(PidginAboutDialog *about) { |
91 _pidgin_about_dialog_load_main_page(PidginAboutDialog *about) { |
| 92 PidginAboutDialogPrivate *priv = pidgin_about_dialog_get_instance_private(about); |
92 PidginAboutDialogPrivate *priv = pidgin_about_dialog_get_instance_private(about); |
| 93 GtkTextMark *mark = NULL; |
93 GtkTextIter start; |
| 94 GtkTextIter insert; |
|
| 95 GInputStream *istream = NULL; |
94 GInputStream *istream = NULL; |
| 96 GString *str = NULL; |
95 GString *str = NULL; |
| 97 gchar buffer[8192]; |
96 gchar buffer[8192]; |
| 98 gssize read = 0, size = 0; |
97 gssize read = 0, size = 0; |
| 99 |
98 |
| 110 while((read = g_input_stream_read(istream, buffer, sizeof(buffer), NULL, NULL)) > 0) { |
109 while((read = g_input_stream_read(istream, buffer, sizeof(buffer), NULL, NULL)) > 0) { |
| 111 g_string_append_len(str, (gchar *)buffer, read); |
110 g_string_append_len(str, (gchar *)buffer, read); |
| 112 size += read; |
111 size += read; |
| 113 } |
112 } |
| 114 |
113 |
| 115 mark = gtk_text_buffer_get_insert(priv->main_buffer); |
114 gtk_text_buffer_get_start_iter(priv->main_buffer, &start); |
| 116 gtk_text_buffer_get_iter_at_mark(priv->main_buffer, &insert, mark); |
|
| 117 |
115 |
| 118 talkatu_markdown_buffer_insert_markdown( |
116 talkatu_markdown_buffer_insert_markdown( |
| 119 TALKATU_MARKDOWN_BUFFER(priv->main_buffer), |
117 TALKATU_MARKDOWN_BUFFER(priv->main_buffer), |
| 120 &insert, |
118 &start, |
| 121 str->str, |
119 str->str, |
| 122 size |
120 size |
| 123 ); |
121 ); |
| 124 |
122 |
| 125 g_string_free(str, TRUE); |
123 g_string_free(str, TRUE); |