Mercurial > dwindows
comparison win/dw.c @ 136:2584a4646b41
Fixed a horrible bug in the code to remove user data from a window on OS/2
and Windows. Would cause a) memory leak b) loss of user data from a
window.
author | bsmith@81767d24-ef19-dc11-ae90-00e081727c95 |
---|---|
date | Mon, 21 Oct 2002 11:41:30 +0000 |
parents | e47c52b37cdd |
children | b479002e013f |
comparison
equal
deleted
inserted
replaced
135:f57ef391f104 | 136:2584a4646b41 |
---|---|
7002 { | 7002 { |
7003 if(!prev) | 7003 if(!prev) |
7004 { | 7004 { |
7005 free(tmp->varname); | 7005 free(tmp->varname); |
7006 free(tmp); | 7006 free(tmp); |
7007 *root = NULL; | 7007 *root = tmp->next; |
7008 return 0; | 7008 return 0; |
7009 } | 7009 } |
7010 else | 7010 else |
7011 { | 7011 { |
7012 prev->next = tmp->next; | 7012 prev->next = tmp->next; |
7013 free(tmp->varname); | 7013 free(tmp->varname); |
7014 free(tmp); | 7014 free(tmp); |
7015 return 0; | 7015 return 0; |
7016 } | 7016 } |
7017 } | 7017 } |
7018 prev = tmp; | |
7018 tmp = tmp->next; | 7019 tmp = tmp->next; |
7019 } | 7020 } |
7020 return 0; | 7021 return 0; |
7021 } | 7022 } |
7022 | 7023 |