summaryrefslogtreecommitdiffabout
authorLars Hjemli <hjemli@gmail.com>2009-11-07 14:35:36 (UTC)
committer Lars Hjemli <hjemli@gmail.com>2009-11-07 14:35:36 (UTC)
commit4b1fee00ddfbb7bfb48f85bef49b5aff928d0f2e (patch) (side-by-side diff)
tree593616b5bd2e8c662d00478f50ecee86a0002224
parent13032727ffa81a4de8964d4002c359c0983cdeb2 (diff)
parent8cfe4897f01066ae901bdd6ef106faf8e8f2ddf2 (diff)
downloadcgit-4b1fee00ddfbb7bfb48f85bef49b5aff928d0f2e.zip
cgit-4b1fee00ddfbb7bfb48f85bef49b5aff928d0f2e.tar.gz
cgit-4b1fee00ddfbb7bfb48f85bef49b5aff928d0f2e.tar.bz2
Merge branch 'stable'
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--shared.c9
-rw-r--r--ui-shared.c2
2 files changed, 8 insertions, 3 deletions
diff --git a/shared.c b/shared.c
index d7b2d5a..a27ab30 100644
--- a/shared.c
+++ b/shared.c
@@ -397,21 +397,26 @@ int cgit_close_filter(struct cgit_filter *filter)
/* Read the content of the specified file into a newly allocated buffer,
* zeroterminate the buffer and return 0 on success, errno otherwise.
*/
int readfile(const char *path, char **buf, size_t *size)
{
int fd;
struct stat st;
fd = open(path, O_RDONLY);
if (fd == -1)
return errno;
- if (fstat(fd, &st))
+ if (fstat(fd, &st)) {
+ close(fd);
return errno;
- if (!S_ISREG(st.st_mode))
+ }
+ if (!S_ISREG(st.st_mode)) {
+ close(fd);
return EISDIR;
+ }
*buf = xmalloc(st.st_size + 1);
*size = read_in_full(fd, *buf, st.st_size);
(*buf)[*size] = '\0';
+ close(fd);
return (*size == st.st_size ? 0 : errno);
}
diff --git a/ui-shared.c b/ui-shared.c
index 6cb7edb..3a9e67b 100644
--- a/ui-shared.c
+++ b/ui-shared.c
@@ -11,25 +11,25 @@
#include "html.h"
const char cgit_doctype[] =
"<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\"\n"
" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\n";
static char *http_date(time_t t)
{
static char day[][4] =
{"Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"};
static char month[][4] =
{"Jan", "Feb", "Mar", "Apr", "May", "Jun",
- "Jul", "Aug", "Sep", "Oct", "Now", "Dec"};
+ "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"};
struct tm *tm = gmtime(&t);
return fmt("%s, %02d %s %04d %02d:%02d:%02d GMT", day[tm->tm_wday],
tm->tm_mday, month[tm->tm_mon], 1900+tm->tm_year,
tm->tm_hour, tm->tm_min, tm->tm_sec);
}
void cgit_print_error(char *msg)
{
html("<div class='error'>");
html_txt(msg);
html("</div>\n");
}