Browse Source

fixed various memory management issues detected with valgrind

v0.1.8
Georg Hopp 12 years ago
parent
commit
126a8ca3e9
  1. 8
      src/application/controller/signup/create.c
  2. 8
      src/application/controller/user/create.c
  3. 9
      src/application/controller/user/update.c
  4. 2
      src/application/create_user.c
  5. 3
      src/application/login.c
  6. 4
      src/application/update_password.c
  7. 2
      src/application/update_user.c
  8. 2
      src/config/config.c
  9. 2
      src/config/value.c

8
src/application/controller/signup/create.c

@ -42,14 +42,13 @@ controllerSignupCreate(
{
Credential credential;
User user;
Uuid user_id;
char * response_data;
_controllerProcessUserCreateArgs(args, &user, &credential);
if (0 == uuidCompare(
uuidZero,
applicationCreateUser(application, credential, user)))
{
user_id = applicationCreateUser(application, credential, user);
if (0 == uuidCompare(uuidZero, user_id)) {
response_data = NULL;
} else {
applicationLogin(application, credential, session);
@ -58,6 +57,7 @@ controllerSignupCreate(
delete(credential);
delete(user);
delete(user_id);
return response_data;

8
src/application/controller/user/create.c

@ -41,14 +41,13 @@ controllerUserCreate(
{
Credential credential;
User user;
Uuid user_id;
char * response_data;
_controllerProcessUserCreateArgs(args, &user, &credential);
if (0 == uuidCompare(
uuidZero,
applicationCreateUser(application, credential, user)))
{
user_id = applicationCreateUser(application, credential, user);
if (0 == uuidCompare(uuidZero, user_id)) {
response_data = NULL;
} else {
response_data = controllerCurrentuserRead(application, session, NULL);
@ -56,6 +55,7 @@ controllerUserCreate(
delete(credential);
delete(user);
delete(user_id);
return response_data;
}

9
src/application/controller/user/update.c

@ -39,16 +39,17 @@ controllerUserUpdate(
Session session,
Hash args)
{
Uuid user_id;
if (! _controllerUpdateUserFromArgs(args, &(session->user))) {
return NULL;
}
if (0 == uuidCompare(
uuidZero,
applicationUpdateUser(application, session->user)))
{
user_id = applicationUpdateUser(application, session->user);
if (0 == uuidCompare(uuidZero, user_id)) {
return NULL;
}
delete(user_id);
return controllerCurrentuserRead(application, session, NULL);
}

2
src/application/create_user.c

@ -62,6 +62,8 @@ applicationCreateUser(
return uuidZero;
}
MEM_FREE(user_serialized);
if (! applicationUpdatePassword(this, cred, user)) {
/**
* \todo

3
src/application/login.c

@ -120,9 +120,12 @@ applicationLogin(
break;
}
delete(search);
return TRUE;
}
delete(search);
return FALSE;
}

4
src/application/update_password.c

@ -48,8 +48,6 @@ applicationUpdatePassword(
unsigned char * hash = hash_data+SALT_SIZE;
Uuid index;
index = indexUuid(user, this->user_namespace);
if (FALSE == hash_pw(
CRED_PWD(cred).pass,
CRED_PWD(cred).npass,
@ -61,12 +59,14 @@ applicationUpdatePassword(
memcpy(hash_data, salt, SALT_SIZE);
MEM_FREE(salt);
index = indexUuid(user, this->user_namespace);
storageUpdate(
this->passwords,
(char *)(index->uuid).value,
sizeof((index->uuid).value),
(char *)hash_data,
SALT_SIZE + HASH_SIZE);
delete(index);
return TRUE;
}

2
src/application/update_user.c

@ -61,6 +61,8 @@ applicationUpdateUser(
return uuidZero;
}
MEM_FREE(user_serialized);
return index;
}

2
src/config/config.c

@ -67,7 +67,7 @@ configCtor(void * _this, va_list * params)
key++;
}
if ('#' == *key) {
if ('#' == *key || 0 == *key) {
continue;
}

2
src/config/value.c

@ -54,7 +54,7 @@ configValueCtor(void * _this, va_list * params)
{
this->type = CONFIG_VALUE_STRING;
(this->value).string = memMalloc(nvalue-1);
(this->value).string[nvalue-1] = '\0';
(this->value).string[nvalue-2] = '\0';
memcpy((this->value).string, value+1, nvalue-2);
this->nvalue = nvalue;
} else {

Loading…
Cancel
Save