Browse Source

fix memory leak created while changing things

master
Georg Hopp 14 years ago
parent
commit
3dac803c41
  1. 4
      src/http/header/get.c
  2. 2
      src/http/request/parser/get_header.c
  3. 7
      src/testserver.c

4
src/http/header/get.c

@ -31,11 +31,11 @@ char *
httpHeaderGet(const HttpHeader header[], int nheader, const char * name)
{
unsigned long hash = sdbm((unsigned char *)name);
HttpHeader found;
HttpHeader * found;
found = bsearch(&hash, header, nheader, sizeof(HttpHeader), comp);
return (NULL != found)? found->value : NULL;
return (NULL != *found)? (*found)->value : NULL;
}
// vim: set ts=4 sw=4:

2
src/http/request/parser/get_header.c

@ -9,7 +9,7 @@ httpRequestParserGetHeader(HttpRequest request, char * line)
char * name = line;
char * value = strchr(line, ':');
*value = 0;
*(value++) = 0;
for (; *value == ' ' && *value != 0; value++);
(request->header)[request->nheader++] = new(HttpHeader, name, value);

7
src/testserver.c

@ -2,6 +2,9 @@
#include <socket.h>
#include <string.h>
#include <sys/time.h>
#include <sys/resource.h>
#include "server.h"
#include "logger.h"
#include "http/request_parser.h"
@ -13,11 +16,15 @@
int
main()
{
struct rlimit limit = {RLIM_INFINITY, RLIM_INFINITY};
Logger logger = new(LoggerStderr, LOGGER_ERR);
HttpRequestParser parser = new(HttpRequestParser);
Server server = new(Server, logger, parser, 11212, SOMAXCONN);
//Server server = new(Server, logger, parser, 11212, 20);
setrlimit(RLIMIT_CPU, &limit);
init_signals();
serverRun(server);

Loading…
Cancel
Save