Mercurial > pidgin.yaz
comparison libpurple/plugins/log_reader.c @ 20846:49fcee9835aa
Fix CID 317 and 335 as well as an additional leak.
| author | Daniel Atallah <daniel.atallah@gmail.com> |
|---|---|
| date | Tue, 09 Oct 2007 20:40:49 +0000 |
| parents | 368d79355aba |
| children | d4cdca890d8e 8de7c44fd577 |
comparison
equal
deleted
inserted
replaced
| 20845:296aaf148aed | 20846:49fcee9835aa |
|---|---|
| 1937 data = log->logger_data; | 1937 data = log->logger_data; |
| 1938 | 1938 |
| 1939 g_return_val_if_fail(data->path != NULL, g_strdup("")); | 1939 g_return_val_if_fail(data->path != NULL, g_strdup("")); |
| 1940 g_return_val_if_fail(data->length > 0, g_strdup("")); | 1940 g_return_val_if_fail(data->length > 0, g_strdup("")); |
| 1941 | 1941 |
| 1942 error = NULL; | |
| 1943 | |
| 1944 contents = g_malloc(data->length + 2); | |
| 1945 | |
| 1946 file = g_fopen(data->path, "rb"); | 1942 file = g_fopen(data->path, "rb"); |
| 1947 g_return_val_if_fail(file != NULL, g_strdup("")); | 1943 g_return_val_if_fail(file != NULL, g_strdup("")); |
| 1948 | 1944 |
| 1945 contents = g_malloc(data->length + 2); | |
| 1946 | |
| 1949 fseek(file, data->offset, SEEK_SET); | 1947 fseek(file, data->offset, SEEK_SET); |
| 1950 fread(contents, data->length, 1, file); | 1948 fread(contents, data->length, 1, file); |
| 1951 fclose(file); | 1949 fclose(file); |
| 1952 | 1950 |
| 1953 contents[data->length] = '\n'; | 1951 contents[data->length] = '\n'; |
| 2024 "(%u:%02u:%02u) %cM ", hour % 12, | 2022 "(%u:%02u:%02u) %cM ", hour % 12, |
| 2025 min, sec, (hour >= 12) ? 'P': 'A'); | 2023 min, sec, (hour >= 12) ? 'P': 'A'); |
| 2026 g_string_append(formatted, "</font> "); | 2024 g_string_append(formatted, "</font> "); |
| 2027 | 2025 |
| 2028 if (is_in_message) { | 2026 if (is_in_message) { |
| 2029 if (buddy_name != NULL && buddy->alias) { | 2027 if (buddy_name != NULL && buddy != NULL && buddy->alias) { |
| 2030 g_string_append_printf(formatted, | 2028 g_string_append_printf(formatted, |
| 2031 "<span style=\"color: #A82F2F;\">" | 2029 "<span style=\"color: #A82F2F;\">" |
| 2032 "<b>%s</b></span>: ", buddy->alias); | 2030 "<b>%s</b></span>: ", buddy->alias); |
| 2033 } | 2031 } |
| 2034 } else { | 2032 } else { |
| 2054 if (line[0] != '\n' && line[0] != '\r') { | 2052 if (line[0] != '\n' && line[0] != '\r') { |
| 2055 | 2053 |
| 2056 g_string_append(formatted, line); | 2054 g_string_append(formatted, line); |
| 2057 g_string_append(formatted, "<br>"); | 2055 g_string_append(formatted, "<br>"); |
| 2058 } | 2056 } |
| 2059 line = ++c; | 2057 |
| 2058 if (c) | |
| 2059 line = ++c; | |
| 2060 } | 2060 } |
| 2061 } | 2061 } |
| 2062 g_free(contents); | 2062 g_free(contents); |
| 2063 | 2063 |
| 2064 /* XXX: TODO: Avoid this g_strchomp() */ | 2064 /* XXX: TODO: Avoid this g_strchomp() */ |
