mirror of
https://github.com/gryf/wmaker.git
synced 2025-12-19 04:20:27 +01:00
replaced free() with wfree() everywhere
fixed bug in wlist that caused colorpanel to crash
This commit is contained in:
@@ -156,9 +156,10 @@ char *wexpandpath(char *path);
|
||||
|
||||
/* don't free the returned string */
|
||||
char *wgethomedir();
|
||||
|
||||
void *wmalloc(size_t size);
|
||||
void *wrealloc(void *ptr, size_t newsize);
|
||||
void wfree(void *ptr);
|
||||
|
||||
|
||||
void wrelease(void *ptr);
|
||||
void *wretain(void *ptr);
|
||||
|
||||
@@ -177,8 +177,8 @@ WMSortBag(WMBag *bag, int (*comparer)(const void*, const void*))
|
||||
void
|
||||
WMFreeBag(WMBag *bag)
|
||||
{
|
||||
free(bag->items);
|
||||
free(bag);
|
||||
wfree(bag->items);
|
||||
wfree(bag);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -195,7 +195,7 @@ wfindfile(char *paths, char *file)
|
||||
return NULL;
|
||||
|
||||
if (access(fullpath, F_OK)<0) {
|
||||
free(fullpath);
|
||||
wfree(fullpath);
|
||||
return NULL;
|
||||
} else {
|
||||
return fullpath;
|
||||
@@ -217,12 +217,12 @@ wfindfile(char *paths, char *file)
|
||||
strcat(path, "/");
|
||||
strcat(path, file);
|
||||
fullpath = wexpandpath(path);
|
||||
free(path);
|
||||
wfree(path);
|
||||
if (fullpath) {
|
||||
if (access(fullpath, F_OK)==0) {
|
||||
return fullpath;
|
||||
}
|
||||
free(fullpath);
|
||||
wfree(fullpath);
|
||||
}
|
||||
tmp=&(tmp[len+1]);
|
||||
if (*tmp==0) break;
|
||||
@@ -249,7 +249,7 @@ wfindfileinlist(char **path_list, char *file)
|
||||
return NULL;
|
||||
|
||||
if (access(fullpath, F_OK)<0) {
|
||||
free(fullpath);
|
||||
wfree(fullpath);
|
||||
return NULL;
|
||||
} else {
|
||||
return fullpath;
|
||||
@@ -269,13 +269,13 @@ wfindfileinlist(char **path_list, char *file)
|
||||
strcat(path, file);
|
||||
/* expand tilde */
|
||||
fullpath = wexpandpath(path);
|
||||
free(path);
|
||||
wfree(path);
|
||||
if (fullpath) {
|
||||
/* check if file exists */
|
||||
if (access(fullpath, F_OK)==0) {
|
||||
return fullpath;
|
||||
}
|
||||
free(fullpath);
|
||||
wfree(fullpath);
|
||||
}
|
||||
}
|
||||
return NULL;
|
||||
@@ -301,7 +301,7 @@ wfindfileinarray(proplist_t array, char *file)
|
||||
return NULL;
|
||||
|
||||
if (access(fullpath, F_OK)<0) {
|
||||
free(fullpath);
|
||||
wfree(fullpath);
|
||||
return NULL;
|
||||
} else {
|
||||
return fullpath;
|
||||
@@ -329,13 +329,13 @@ wfindfileinarray(proplist_t array, char *file)
|
||||
strcat(path, file);
|
||||
/* expand tilde */
|
||||
fullpath = wexpandpath(path);
|
||||
free(path);
|
||||
wfree(path);
|
||||
if (fullpath) {
|
||||
/* check if file exists */
|
||||
if (access(fullpath, F_OK)==0) {
|
||||
return fullpath;
|
||||
}
|
||||
free(fullpath);
|
||||
wfree(fullpath);
|
||||
}
|
||||
}
|
||||
return NULL;
|
||||
|
||||
@@ -114,7 +114,7 @@ rebuildTable(WMHashTable *table)
|
||||
oldArray[i] = next;
|
||||
}
|
||||
}
|
||||
free(oldArray);
|
||||
wfree(oldArray);
|
||||
}
|
||||
|
||||
|
||||
@@ -149,7 +149,7 @@ WMResetHashTable(WMHashTable *table)
|
||||
while (item) {
|
||||
tmp = item->next;
|
||||
RELKEY(table, item);
|
||||
free(item);
|
||||
wfree(item);
|
||||
item = tmp;
|
||||
}
|
||||
}
|
||||
@@ -157,7 +157,7 @@ WMResetHashTable(WMHashTable *table)
|
||||
table->itemCount = 0;
|
||||
|
||||
if (table->size > INITIAL_CAPACITY) {
|
||||
free(table->table);
|
||||
wfree(table->table);
|
||||
table->size = INITIAL_CAPACITY;
|
||||
table->table = wmalloc(sizeof(HashItem*)*table->size);
|
||||
}
|
||||
@@ -176,12 +176,12 @@ WMFreeHashTable(WMHashTable *table)
|
||||
while (item) {
|
||||
tmp = item->next;
|
||||
RELKEY(table, item->key);
|
||||
free(item);
|
||||
wfree(item);
|
||||
item = tmp;
|
||||
}
|
||||
}
|
||||
free(table->table);
|
||||
free(table);
|
||||
wfree(table->table);
|
||||
wfree(table);
|
||||
}
|
||||
|
||||
|
||||
@@ -296,7 +296,7 @@ deleteFromList(HashTable *table, HashItem *item, const void *key)
|
||||
|
||||
next = item->next;
|
||||
RELKEY(table, item->key);
|
||||
free(item);
|
||||
wfree(item);
|
||||
|
||||
table->itemCount--;
|
||||
|
||||
|
||||
@@ -31,6 +31,10 @@
|
||||
#include <assert.h>
|
||||
#include <signal.h>
|
||||
|
||||
#ifdef TEST_WITH_GC
|
||||
#include <gc/gc.h>
|
||||
#endif
|
||||
|
||||
#ifndef False
|
||||
# define False 0
|
||||
#endif
|
||||
@@ -76,7 +80,11 @@ void *wmalloc(size_t size)
|
||||
{
|
||||
void *tmp;
|
||||
|
||||
#ifdef TEST_WITH_GC
|
||||
tmp = GC_malloc(size);
|
||||
#else
|
||||
tmp = malloc(size);
|
||||
#endif
|
||||
if (tmp == NULL) {
|
||||
wwarning("malloc() failed. Retrying after 2s.");
|
||||
sleep(2);
|
||||
@@ -101,9 +109,17 @@ void *wrealloc(void *ptr, size_t newsize)
|
||||
void *nptr;
|
||||
|
||||
if (!ptr) {
|
||||
#ifdef TEST_WITH_GC
|
||||
nptr = GC_malloc(newsize);
|
||||
#else
|
||||
nptr = malloc(newsize);
|
||||
#endif
|
||||
} else {
|
||||
#ifdef TEST_WITH_GC
|
||||
nptr = GC_realloc(ptr, newsize);
|
||||
#else
|
||||
nptr=realloc(ptr, newsize);
|
||||
#endif
|
||||
}
|
||||
if (nptr==NULL) {
|
||||
printf("Could not do realloc");
|
||||
@@ -141,6 +157,19 @@ wretain(void *ptr)
|
||||
}
|
||||
|
||||
|
||||
|
||||
void
|
||||
wfree(void *ptr)
|
||||
{
|
||||
#ifdef TEST_WITH_GC
|
||||
GC_free(ptr);
|
||||
#else
|
||||
free(ptr);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
|
||||
void
|
||||
wrelease(void *ptr)
|
||||
{
|
||||
@@ -156,8 +185,8 @@ wrelease(void *ptr)
|
||||
printf("RELEASING %p\n", ptr);
|
||||
#endif
|
||||
WMHashRemove(table, ptr);
|
||||
free(refcount);
|
||||
free(ptr);
|
||||
wfree(refcount);
|
||||
wfree(ptr);
|
||||
}
|
||||
#ifdef VERBOSE
|
||||
else {
|
||||
|
||||
@@ -108,7 +108,7 @@ CreateMyWidget(WMWidget *parent)
|
||||
*/
|
||||
mPtr->view = W_CreateView(W_VIEW(parent));
|
||||
if (!mPtr->view) {
|
||||
free(mPtr);
|
||||
wfree(mPtr);
|
||||
return NULL;
|
||||
}
|
||||
/* always do this */
|
||||
@@ -200,7 +200,7 @@ SetMyWidgetText(MyWidget *mPtr, char *text)
|
||||
CHECK_CLASS(mPtr, myWidgetClass);
|
||||
|
||||
if (mPtr->text)
|
||||
free(mPtr->text);
|
||||
wfree(mPtr->text);
|
||||
|
||||
mPtr->text = wstrdup(text);
|
||||
|
||||
@@ -219,9 +219,9 @@ destroyMyWidget(_MyWidget *mPtr)
|
||||
*/
|
||||
|
||||
if (mPtr->text)
|
||||
free(mPtr->text);
|
||||
wfree(mPtr->text);
|
||||
|
||||
free(mPtr);
|
||||
wfree(mPtr);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -62,7 +62,7 @@ WMReleaseNotification(WMNotification *notification)
|
||||
notification->refCount--;
|
||||
|
||||
if (notification->refCount < 1) {
|
||||
free(notification);
|
||||
wfree(notification);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -274,7 +274,7 @@ WMRemoveNotificationObserver(void *observer)
|
||||
if (orec->next)
|
||||
orec->next->prev = orec->prev;
|
||||
|
||||
free(orec);
|
||||
wfree(orec);
|
||||
|
||||
orec = tmp;
|
||||
}
|
||||
@@ -334,7 +334,7 @@ WMRemoveNotificationObserverWithName(void *observer, char *name, void *object)
|
||||
orec->prev->next = orec->next;
|
||||
if (orec->next)
|
||||
orec->next->prev = orec->prev;
|
||||
free(orec);
|
||||
wfree(orec);
|
||||
} else {
|
||||
/* append this action in the new action list */
|
||||
orec->nextAction = NULL;
|
||||
|
||||
@@ -50,7 +50,7 @@ WMDeleteSelectionHandler(WMWidget *widget, Atom selection)
|
||||
}
|
||||
selHandlers = tmp->next;
|
||||
timestamp = tmp->timestamp;
|
||||
free(tmp);
|
||||
wfree(tmp);
|
||||
} else {
|
||||
while (tmp->next) {
|
||||
if (tmp->next->widget == widget) {
|
||||
@@ -62,7 +62,7 @@ WMDeleteSelectionHandler(WMWidget *widget, Atom selection)
|
||||
handler = tmp->next;
|
||||
tmp->next = handler->next;
|
||||
timestamp = handler->timestamp;
|
||||
free(handler);
|
||||
wfree(handler);
|
||||
break;
|
||||
}
|
||||
tmp = tmp->next;
|
||||
@@ -188,11 +188,11 @@ W_HandleSelectionEvent(XEvent *event)
|
||||
event->xselectionrequest.requestor,
|
||||
prop, atom, data, length, format)) {
|
||||
|
||||
free(data);
|
||||
wfree(data);
|
||||
notifySelection(event, None);
|
||||
break;
|
||||
}
|
||||
free(data);
|
||||
wfree(data);
|
||||
|
||||
notifySelection(event, prop);
|
||||
|
||||
|
||||
@@ -54,7 +54,7 @@ wusergnusteppath()
|
||||
pathlen = strlen(gspath) + 4;
|
||||
path = wmalloc(pathlen);
|
||||
strcpy(path, gspath);
|
||||
free(gspath);
|
||||
wfree(gspath);
|
||||
} else {
|
||||
pathlen = strlen(wgethomedir()) + 10;
|
||||
path = wmalloc(pathlen);
|
||||
@@ -185,7 +185,7 @@ WMGetStandardUserDefaults(void)
|
||||
}
|
||||
}
|
||||
if (path)
|
||||
free(path);
|
||||
wfree(path);
|
||||
|
||||
defaults->appDomain = domain;
|
||||
|
||||
@@ -202,7 +202,7 @@ WMGetStandardUserDefaults(void)
|
||||
|
||||
domain = PLGetProplistWithPath(path);
|
||||
|
||||
free(path);
|
||||
wfree(path);
|
||||
|
||||
if (!domain)
|
||||
domain = PLMakeDictionaryFromEntries(NULL, NULL, NULL);
|
||||
@@ -538,7 +538,7 @@ WMSetUDSearchList(WMUserDefaults *database, proplist_t list)
|
||||
PLRelease(database->searchList[i]);
|
||||
i++;
|
||||
}
|
||||
free(database->searchList);
|
||||
wfree(database->searchList);
|
||||
}
|
||||
if (database->searchListArray) {
|
||||
PLRelease(database->searchListArray);
|
||||
|
||||
@@ -51,7 +51,7 @@ void
|
||||
WMSetResourcePath(char *path)
|
||||
{
|
||||
if (WMApplication.resourcePath)
|
||||
free(WMApplication.resourcePath);
|
||||
wfree(WMApplication.resourcePath);
|
||||
WMApplication.resourcePath = wstrdup(path);
|
||||
}
|
||||
|
||||
@@ -84,7 +84,7 @@ checkFile(char *path, char *folder, char *ext, char *resource)
|
||||
strcat(ret, resource);
|
||||
|
||||
if (access(ret, F_OK)!=0) {
|
||||
free(ret);
|
||||
wfree(ret);
|
||||
ret = NULL;
|
||||
}
|
||||
|
||||
@@ -128,7 +128,7 @@ WMPathForResourceOfType(char *resource, char *ext)
|
||||
} else {
|
||||
path = NULL;
|
||||
}
|
||||
free(tmp);
|
||||
wfree(tmp);
|
||||
if (path)
|
||||
return path;
|
||||
}
|
||||
@@ -139,7 +139,7 @@ WMPathForResourceOfType(char *resource, char *ext)
|
||||
if (getenv("GNUSTEP_USER_ROOT")) {
|
||||
path = checkFile(getenv("GNUSTEP_USER_ROOT"), appdir, ext, resource);
|
||||
if (path) {
|
||||
free(appdir);
|
||||
wfree(appdir);
|
||||
return path;
|
||||
}
|
||||
}
|
||||
@@ -148,7 +148,7 @@ WMPathForResourceOfType(char *resource, char *ext)
|
||||
if (tmp) {
|
||||
path = checkFile(tmp, appdir, ext, resource);
|
||||
if (path) {
|
||||
free(appdir);
|
||||
wfree(appdir);
|
||||
return path;
|
||||
}
|
||||
}
|
||||
@@ -156,14 +156,14 @@ WMPathForResourceOfType(char *resource, char *ext)
|
||||
if (getenv("GNUSTEP_LOCAL_ROOT")) {
|
||||
path = checkFile(getenv("GNUSTEP_LOCAL_ROOT"), appdir, ext, resource);
|
||||
if (path) {
|
||||
free(appdir);
|
||||
wfree(appdir);
|
||||
return path;
|
||||
}
|
||||
}
|
||||
|
||||
path = checkFile("/usr/local/GNUstep", appdir, ext, resource);
|
||||
if (path) {
|
||||
free(appdir);
|
||||
wfree(appdir);
|
||||
return path;
|
||||
}
|
||||
|
||||
@@ -171,14 +171,14 @@ WMPathForResourceOfType(char *resource, char *ext)
|
||||
if (getenv("GNUSTEP_SYSTEM_ROOT")) {
|
||||
path = checkFile(getenv("GNUSTEP_SYSTEM_ROOT"), appdir, ext, resource);
|
||||
if (path) {
|
||||
free(appdir);
|
||||
wfree(appdir);
|
||||
return path;
|
||||
}
|
||||
}
|
||||
|
||||
path = checkFile("/usr/GNUstep", appdir, ext, resource);
|
||||
if (path) {
|
||||
free(appdir);
|
||||
wfree(appdir);
|
||||
return path;
|
||||
}
|
||||
|
||||
|
||||
@@ -61,7 +61,7 @@ W_CreateBalloon(WMScreen *scr)
|
||||
|
||||
bPtr->view = W_CreateTopView(scr);
|
||||
if (!bPtr->view) {
|
||||
free(bPtr);
|
||||
wfree(bPtr);
|
||||
return NULL;
|
||||
}
|
||||
bPtr->view->self = bPtr;
|
||||
@@ -110,7 +110,7 @@ WMSetBalloonTextForView(char *text, WMView *view)
|
||||
}
|
||||
|
||||
if (oldText) {
|
||||
free(oldText);
|
||||
wfree(oldText);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -466,7 +466,7 @@ destroyBalloon(Balloon *bPtr)
|
||||
e = WMEnumerateHashTable(bPtr->table);
|
||||
|
||||
while ((str = WMNextHashEnumeratorItem(&e))) {
|
||||
free(str);
|
||||
wfree(str);
|
||||
}
|
||||
WMFreeHashTable(bPtr->table);
|
||||
|
||||
@@ -476,5 +476,5 @@ destroyBalloon(Balloon *bPtr)
|
||||
if (bPtr->font)
|
||||
WMReleaseFont(bPtr->font);
|
||||
|
||||
free(bPtr);
|
||||
wfree(bPtr);
|
||||
}
|
||||
|
||||
@@ -115,7 +115,7 @@ WMCreateBrowser(WMWidget *parent)
|
||||
|
||||
bPtr->view = W_CreateView(W_VIEW(parent));
|
||||
if (!bPtr->view) {
|
||||
free(bPtr);
|
||||
wfree(bPtr);
|
||||
return NULL;
|
||||
}
|
||||
bPtr->view->self = bPtr;
|
||||
@@ -225,7 +225,7 @@ void
|
||||
WMSetBrowserPathSeparator(WMBrowser *bPtr, char *separator)
|
||||
{
|
||||
if (bPtr->pathSeparator)
|
||||
free(bPtr->pathSeparator);
|
||||
wfree(bPtr->pathSeparator);
|
||||
bPtr->pathSeparator = wstrdup(separator);
|
||||
}
|
||||
|
||||
@@ -319,14 +319,14 @@ removeColumn(WMBrowser *bPtr, int column)
|
||||
}
|
||||
for (i=column; i < clearEnd; i++) {
|
||||
if (bPtr->titles[i]) {
|
||||
free(bPtr->titles[i]);
|
||||
wfree(bPtr->titles[i]);
|
||||
bPtr->titles[i] = NULL;
|
||||
}
|
||||
WMClearList(bPtr->columns[i]);
|
||||
}
|
||||
for (;i < destroyEnd; i++) {
|
||||
if (bPtr->titles[i]) {
|
||||
free(bPtr->titles[i]);
|
||||
wfree(bPtr->titles[i]);
|
||||
bPtr->titles[i] = NULL;
|
||||
}
|
||||
WMRemoveNotificationObserverWithName(bPtr,
|
||||
@@ -339,8 +339,8 @@ removeColumn(WMBrowser *bPtr, int column)
|
||||
tlist = wmalloc(sizeof(char*) * (bPtr->columnCount));
|
||||
memcpy(clist, bPtr->columns, sizeof(WMList*) * (bPtr->columnCount));
|
||||
memcpy(tlist, bPtr->titles, sizeof(char*) * (bPtr->columnCount));
|
||||
free(bPtr->titles);
|
||||
free(bPtr->columns);
|
||||
wfree(bPtr->titles);
|
||||
wfree(bPtr->columns);
|
||||
bPtr->titles = tlist;
|
||||
bPtr->columns = clist;
|
||||
}
|
||||
@@ -382,7 +382,7 @@ WMSetBrowserColumnTitle(WMBrowser *bPtr, int column, char *title)
|
||||
assert(column < bPtr->usedColumnCount);
|
||||
|
||||
if (bPtr->titles[column])
|
||||
free(bPtr->titles[column]);
|
||||
wfree(bPtr->titles[column]);
|
||||
|
||||
bPtr->titles[column] = wstrdup(title);
|
||||
|
||||
@@ -532,7 +532,7 @@ paintItem(WMList *lPtr, int index, Drawable d, char *text, int state,
|
||||
text, &textLen, widthC);
|
||||
W_PaintText(view, d, scr->normalFont, x+4, y, widthC,
|
||||
WALeft, WMColorGC(scr->black), False, textBuf, textLen);
|
||||
free(textBuf);
|
||||
wfree(textBuf);
|
||||
} else {
|
||||
W_PaintText(view, d, scr->normalFont, x+4, y, widthC,
|
||||
WALeft, WMColorGC(scr->black), False, text, textLen);
|
||||
@@ -713,7 +713,7 @@ WMSetBrowserPath(WMBrowser *bPtr, char *path)
|
||||
|
||||
i++;
|
||||
}
|
||||
free(str);
|
||||
wfree(str);
|
||||
|
||||
for (i = bPtr->usedColumnCount - 1;
|
||||
(i > -1) && !WMGetListSelectedItem(bPtr->columns[i]);
|
||||
@@ -801,7 +801,7 @@ loadColumn(WMBrowser *bPtr, int column)
|
||||
title = (*bPtr->delegate->titleOfColumn)(bPtr->delegate, bPtr, column);
|
||||
|
||||
if (bPtr->titles[column])
|
||||
free(bPtr->titles[column]);
|
||||
wfree(bPtr->titles[column]);
|
||||
|
||||
bPtr->titles[column] = wstrdup(title);
|
||||
|
||||
@@ -1071,9 +1071,9 @@ WMAddBrowserColumn(WMBrowser *bPtr)
|
||||
memcpy(clist, bPtr->columns, sizeof(WMList*)*(bPtr->columnCount-1));
|
||||
memcpy(tlist, bPtr->titles, sizeof(char*)*(bPtr->columnCount-1));
|
||||
if (bPtr->columns)
|
||||
free(bPtr->columns);
|
||||
wfree(bPtr->columns);
|
||||
if (bPtr->titles)
|
||||
free(bPtr->titles);
|
||||
wfree(bPtr->titles);
|
||||
bPtr->columns = clist;
|
||||
bPtr->titles = tlist;
|
||||
|
||||
@@ -1115,15 +1115,15 @@ destroyBrowser(WMBrowser *bPtr)
|
||||
|
||||
for (i = 0; i < bPtr->columnCount; i++) {
|
||||
if (bPtr->titles[i])
|
||||
free(bPtr->titles[i]);
|
||||
wfree(bPtr->titles[i]);
|
||||
}
|
||||
free(bPtr->titles);
|
||||
wfree(bPtr->titles);
|
||||
|
||||
free(bPtr->pathSeparator);
|
||||
wfree(bPtr->pathSeparator);
|
||||
|
||||
WMRemoveNotificationObserver(bPtr);
|
||||
|
||||
free(bPtr);
|
||||
wfree(bPtr);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -117,7 +117,7 @@ WMCreateCustomButton(WMWidget *parent, int behaviourMask)
|
||||
|
||||
bPtr->view = W_CreateView(W_VIEW(parent));
|
||||
if (!bPtr->view) {
|
||||
free(bPtr);
|
||||
wfree(bPtr);
|
||||
return NULL;
|
||||
}
|
||||
bPtr->view->self = bPtr;
|
||||
@@ -340,7 +340,7 @@ void
|
||||
WMSetButtonText(WMButton *bPtr, char *text)
|
||||
{
|
||||
if (bPtr->caption)
|
||||
free(bPtr->caption);
|
||||
wfree(bPtr->caption);
|
||||
|
||||
if (text!=NULL) {
|
||||
bPtr->caption = wstrdup(text);
|
||||
@@ -359,7 +359,7 @@ void
|
||||
WMSetButtonAltText(WMButton *bPtr, char *text)
|
||||
{
|
||||
if (bPtr->altCaption)
|
||||
free(bPtr->altCaption);
|
||||
wfree(bPtr->altCaption);
|
||||
|
||||
if (text!=NULL) {
|
||||
bPtr->altCaption = wstrdup(text);
|
||||
@@ -752,10 +752,10 @@ destroyButton(Button *bPtr)
|
||||
WMReleaseFont(bPtr->font);
|
||||
|
||||
if (bPtr->caption)
|
||||
free(bPtr->caption);
|
||||
wfree(bPtr->caption);
|
||||
|
||||
if (bPtr->altCaption)
|
||||
free(bPtr->altCaption);
|
||||
wfree(bPtr->altCaption);
|
||||
|
||||
if (bPtr->image)
|
||||
WMReleasePixmap(bPtr->image);
|
||||
@@ -769,7 +769,7 @@ destroyButton(Button *bPtr)
|
||||
if (bPtr->altImage)
|
||||
WMReleasePixmap(bPtr->altImage);
|
||||
|
||||
free(bPtr);
|
||||
wfree(bPtr);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -140,7 +140,7 @@ WMReleaseColor(WMColor *color)
|
||||
&(color->color.pixel), 1, 0);
|
||||
if (color->gc)
|
||||
XFreeGC(color->screen->display, color->gc);
|
||||
free(color);
|
||||
wfree(color);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
* For some reason after using the magnifying glass, the windowlist
|
||||
* of the color-panel (panel->view->screen) becomes 0x0. This
|
||||
* results in a core-dump of testcolorpanel, and in 3 times
|
||||
* "WPrefs in free(): warning: chunk is already free." with WPrefs.
|
||||
* "WPrefs in wfree(): warning: chunk is already free." with WPrefs.
|
||||
*/
|
||||
|
||||
/* TODO:
|
||||
@@ -1094,11 +1094,11 @@ WMFreeColorPanel(WMColorPanel *panel)
|
||||
|
||||
/* structs */
|
||||
if (panel->lastBrowseDir)
|
||||
free(panel->lastBrowseDir);
|
||||
wfree(panel->lastBrowseDir);
|
||||
if (panel->configurationPath)
|
||||
free(panel->configurationPath);
|
||||
wfree(panel->configurationPath);
|
||||
|
||||
free(panel);
|
||||
wfree(panel);
|
||||
}
|
||||
|
||||
|
||||
@@ -1816,7 +1816,7 @@ magnifyPutCursor(WMWidget *w, void *data)
|
||||
XFreePixmap(scr->display, panel->magnifyGlass->pixmap);
|
||||
panel->magnifyGlass->pixmap = None;
|
||||
|
||||
free(panel->magnifyGlass);
|
||||
wfree(panel->magnifyGlass);
|
||||
}
|
||||
|
||||
|
||||
@@ -1851,10 +1851,10 @@ wheelCreateMatrix(unsigned int width, unsigned int height)
|
||||
error:
|
||||
for (i = 0; i < 3; i++) {
|
||||
if (matrix->data[i])
|
||||
free(matrix->data[i]);
|
||||
wfree(matrix->data[i]);
|
||||
}
|
||||
if (matrix)
|
||||
free(matrix);
|
||||
wfree(matrix);
|
||||
RErrorCode = RERR_NOMEMORY;
|
||||
return NULL;
|
||||
}
|
||||
@@ -1869,9 +1869,9 @@ wheelDestroyMatrix(wheelMatrix *matrix)
|
||||
|
||||
for (i = 0; i < 3; i++) {
|
||||
if (matrix->data[i])
|
||||
free(matrix->data[i]);
|
||||
wfree(matrix->data[i]);
|
||||
}
|
||||
free(matrix);
|
||||
wfree(matrix);
|
||||
}
|
||||
|
||||
|
||||
@@ -2758,10 +2758,10 @@ hsbUpdateHueGradient(W_ColorPanel *panel)
|
||||
|
||||
for (i=0; i<7; i++) {
|
||||
if (colors[i])
|
||||
free(colors[i]);
|
||||
wfree(colors[i]);
|
||||
}
|
||||
if (colors)
|
||||
free(colors);
|
||||
wfree(colors);
|
||||
}
|
||||
|
||||
/*************** Custom Palette Functions ****************/
|
||||
@@ -3027,7 +3027,7 @@ customPaletteMenuNewFromFile(W_ColorPanel *panel)
|
||||
|
||||
/* Store last browsed path */
|
||||
if (panel->lastBrowseDir)
|
||||
free(panel->lastBrowseDir);
|
||||
wfree(panel->lastBrowseDir);
|
||||
panel->lastBrowseDir = wmalloc((i+1)*sizeof(char));
|
||||
strncpy(panel->lastBrowseDir, filepath, i);
|
||||
panel->lastBrowseDir[i] = '\0';
|
||||
@@ -3040,22 +3040,22 @@ customPaletteMenuNewFromFile(W_ColorPanel *panel)
|
||||
while (access (tmp, F_OK) == 0) {
|
||||
char *newName;
|
||||
|
||||
free(tmp);
|
||||
wfree(tmp);
|
||||
|
||||
newName = generateNewFilename(filename);
|
||||
free(filename);
|
||||
wfree(filename);
|
||||
filename = newName;
|
||||
|
||||
tmp = wstrappend(panel->configurationPath, filename);
|
||||
}
|
||||
free(tmp);
|
||||
wfree(tmp);
|
||||
|
||||
/* Copy image to $(gnustepdir)/Library/Colors/ &
|
||||
* Add filename to history menu */
|
||||
if (fetchFile (panel->configurationPath, filepath, filename) == 0) {
|
||||
|
||||
/* filepath is a "local" path now the file has been copied */
|
||||
free(filepath);
|
||||
wfree(filepath);
|
||||
filepath = wstrappend(panel->configurationPath, filename);
|
||||
|
||||
/* load the image & add menu entries */
|
||||
@@ -3088,14 +3088,14 @@ customPaletteMenuNewFromFile(W_ColorPanel *panel)
|
||||
"Couldn't remove file from Configuration Directory !",
|
||||
"OK", NULL, NULL);
|
||||
}
|
||||
free(tmp);
|
||||
wfree(tmp);
|
||||
}
|
||||
free(filepath);
|
||||
free(filename);
|
||||
wfree(filepath);
|
||||
wfree(filename);
|
||||
}
|
||||
WMFreeFilePanel(browseP);
|
||||
|
||||
free(spath);
|
||||
wfree(spath);
|
||||
}
|
||||
|
||||
|
||||
@@ -3119,7 +3119,7 @@ customPaletteMenuRename(W_ColorPanel *panel)
|
||||
|
||||
/* As some people do certain stupid things... */
|
||||
if (strcmp(toName, fromName) == 0) {
|
||||
free(toName);
|
||||
wfree(toName);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -3153,9 +3153,9 @@ customPaletteMenuRename(W_ColorPanel *panel)
|
||||
}
|
||||
|
||||
} else {
|
||||
free(fromPath);
|
||||
free(toName);
|
||||
free(toPath);
|
||||
wfree(fromPath);
|
||||
wfree(toName);
|
||||
wfree(toPath);
|
||||
|
||||
return;
|
||||
}
|
||||
@@ -3170,9 +3170,9 @@ customPaletteMenuRename(W_ColorPanel *panel)
|
||||
|
||||
WMSetPopUpButtonSelectedItem(panel->customPaletteHistoryBtn, item);
|
||||
}
|
||||
free(fromPath);
|
||||
free(toPath);
|
||||
free(toName);
|
||||
wfree(fromPath);
|
||||
wfree(toPath);
|
||||
wfree(toName);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3192,11 +3192,11 @@ customPaletteMenuRemove(W_ColorPanel *panel)
|
||||
WMGetPopUpButtonItem(panel->customPaletteHistoryBtn, item ));
|
||||
text = wstrappend( tmp, ".\n\nAre you sure you want to remove this"
|
||||
" palette ?");
|
||||
free(tmp);
|
||||
wfree(tmp);
|
||||
|
||||
choice = WMRunAlertPanel(scr, panel->win, NULL, text, "Yes", "No", NULL);
|
||||
/* returns 0 (= "Yes") or 1 (="No") */
|
||||
free(text);
|
||||
wfree(text);
|
||||
|
||||
if (choice == 0) {
|
||||
|
||||
@@ -3205,7 +3205,7 @@ customPaletteMenuRemove(W_ColorPanel *panel)
|
||||
|
||||
if ( remove(tmp) != 0)
|
||||
wsyserror("Couldn't remove palette %s\n", tmp);
|
||||
free(tmp);
|
||||
wfree(tmp);
|
||||
|
||||
/* item -1 always exists */
|
||||
WMSetPopUpButtonSelectedItem(panel->customPaletteHistoryBtn, item-1);
|
||||
@@ -3249,7 +3249,7 @@ customPaletteHistoryCallback(WMWidget *w, void *data)
|
||||
}
|
||||
panel->customPaletteImg = tmp;
|
||||
}
|
||||
free(filename);
|
||||
wfree(filename);
|
||||
}
|
||||
customSetPalette(panel);
|
||||
|
||||
@@ -3484,10 +3484,10 @@ fetchFile(char *toPath, char *srcFile, char *destFile)
|
||||
if ((dest = open( tmp, O_RDWR|O_CREAT, S_IRUSR|S_IWUSR|S_IRGRP|S_IROTH))
|
||||
== 0) {
|
||||
wsyserror("Could not create %s", tmp);
|
||||
free(tmp);
|
||||
wfree(tmp);
|
||||
return -1;
|
||||
}
|
||||
free(tmp);
|
||||
wfree(tmp);
|
||||
|
||||
|
||||
/* Copy the file */
|
||||
|
||||
@@ -129,7 +129,7 @@ WMCreateColorWell(WMWidget *parent)
|
||||
|
||||
cPtr->view = W_CreateView(W_VIEW(parent));
|
||||
if (!cPtr->view) {
|
||||
free(cPtr);
|
||||
wfree(cPtr);
|
||||
return NULL;
|
||||
}
|
||||
cPtr->view->self = cPtr;
|
||||
@@ -139,7 +139,7 @@ WMCreateColorWell(WMWidget *parent)
|
||||
cPtr->colorView = W_CreateView(cPtr->view);
|
||||
if (!cPtr->colorView) {
|
||||
W_DestroyView(cPtr->view);
|
||||
free(cPtr);
|
||||
wfree(cPtr);
|
||||
return NULL;
|
||||
}
|
||||
cPtr->colorView->self = cPtr;
|
||||
@@ -480,6 +480,6 @@ destroyColorWell(ColorWell *cPtr)
|
||||
if (cPtr->color)
|
||||
WMReleaseColor(cPtr->color);
|
||||
|
||||
free(cPtr);
|
||||
wfree(cPtr);
|
||||
}
|
||||
|
||||
|
||||
@@ -181,13 +181,13 @@ WMDeleteTimerWithClientData(void *cdata)
|
||||
tmp = timerHandler;
|
||||
if (tmp->clientData==cdata) {
|
||||
timerHandler = tmp->next;
|
||||
free(tmp);
|
||||
wfree(tmp);
|
||||
} else {
|
||||
while (tmp->next) {
|
||||
if (tmp->next->clientData==cdata) {
|
||||
handler = tmp->next;
|
||||
tmp->next = handler->next;
|
||||
free(handler);
|
||||
wfree(handler);
|
||||
break;
|
||||
}
|
||||
tmp = tmp->next;
|
||||
@@ -208,12 +208,12 @@ WMDeleteTimerHandler(WMHandlerID handlerID)
|
||||
tmp = timerHandler;
|
||||
if (tmp==handler) {
|
||||
timerHandler = handler->next;
|
||||
free(handler);
|
||||
wfree(handler);
|
||||
} else {
|
||||
while (tmp->next) {
|
||||
if (tmp->next==handler) {
|
||||
tmp->next=handler->next;
|
||||
free(handler);
|
||||
wfree(handler);
|
||||
break;
|
||||
}
|
||||
tmp = tmp->next;
|
||||
@@ -262,12 +262,12 @@ WMDeleteIdleHandler(WMHandlerID handlerID)
|
||||
tmp = idleHandler;
|
||||
if (tmp == handler) {
|
||||
idleHandler = handler->next;
|
||||
free(handler);
|
||||
wfree(handler);
|
||||
} else {
|
||||
while (tmp->next) {
|
||||
if (tmp->next == handler) {
|
||||
tmp->next = handler->next;
|
||||
free(handler);
|
||||
wfree(handler);
|
||||
break;
|
||||
}
|
||||
tmp = tmp->next;
|
||||
@@ -308,12 +308,12 @@ WMDeleteInputHandler(WMHandlerID handlerID)
|
||||
tmp = inputHandler;
|
||||
if (tmp == handler) {
|
||||
inputHandler = handler->next;
|
||||
free(handler);
|
||||
wfree(handler);
|
||||
} else {
|
||||
while (tmp->next) {
|
||||
if (tmp->next == handler) {
|
||||
tmp->next = handler->next;
|
||||
free(handler);
|
||||
wfree(handler);
|
||||
break;
|
||||
}
|
||||
tmp = tmp->next;
|
||||
@@ -341,7 +341,7 @@ checkIdleHandlers()
|
||||
tmp = handler->next;
|
||||
(*handler->callback)(handler->clientData);
|
||||
/* remove the handler */
|
||||
free(handler);
|
||||
wfree(handler);
|
||||
|
||||
handler = tmp;
|
||||
}
|
||||
@@ -363,7 +363,7 @@ checkTimerHandlers()
|
||||
timerHandler = timerHandler->next;
|
||||
handler->next = NULL;
|
||||
(*handler->callback)(handler->clientData);
|
||||
free(handler);
|
||||
wfree(handler);
|
||||
}
|
||||
|
||||
W_FlushASAPNotificationQueue();
|
||||
@@ -484,7 +484,7 @@ WMDeleteEventHandler(WMView *view, unsigned long mask, WMEventProc *eventProc,
|
||||
} else {
|
||||
pptr->nextHandler = handler->nextHandler;
|
||||
}
|
||||
free(handler);
|
||||
wfree(handler);
|
||||
}
|
||||
|
||||
|
||||
@@ -498,7 +498,7 @@ W_CleanUpEvents(WMView *view)
|
||||
|
||||
while (ptr!=NULL) {
|
||||
nptr = ptr->nextHandler;
|
||||
free(ptr);
|
||||
wfree(ptr);
|
||||
ptr = nptr;
|
||||
}
|
||||
}
|
||||
@@ -809,7 +809,7 @@ W_WaitForEvent(Display *dpy, unsigned long xeventmask)
|
||||
}
|
||||
|
||||
retval = fds[0].revents & (POLLIN|POLLRDNORM|POLLRDBAND|POLLPRI);
|
||||
free(fds);
|
||||
wfree(fds);
|
||||
|
||||
W_FlushASAPNotificationQueue();
|
||||
|
||||
|
||||
@@ -164,7 +164,7 @@ textChangedObserver(void *observerData, WMNotification *notification)
|
||||
}
|
||||
}
|
||||
|
||||
free(text);
|
||||
wfree(text);
|
||||
}
|
||||
|
||||
|
||||
@@ -366,7 +366,7 @@ WMFreeFilePanel(WMFilePanel *panel)
|
||||
WMRemoveNotificationObserver(panel);
|
||||
WMUnmapWidget(panel->win);
|
||||
WMDestroyWidget(panel->win);
|
||||
free(panel);
|
||||
wfree(panel);
|
||||
}
|
||||
|
||||
|
||||
@@ -601,7 +601,7 @@ fillColumn(WMBrowserDelegate *self, WMBrowser *bPtr, int column, WMList *list)
|
||||
|
||||
panel = WMGetHangedData(bPtr);
|
||||
listDirectoryOnColumn(panel, column, path);
|
||||
free(path);
|
||||
wfree(path);
|
||||
}
|
||||
|
||||
|
||||
@@ -637,7 +637,7 @@ showError(WMScreen *scr, WMWindow *owner, char *s, char *file)
|
||||
errStr = wstrdup(s);
|
||||
}
|
||||
WMRunAlertPanel(scr, owner, "Error", errStr, "OK", NULL, NULL);
|
||||
free(errStr);
|
||||
wfree(errStr);
|
||||
}
|
||||
|
||||
|
||||
@@ -717,9 +717,9 @@ createDir(WMButton *bPre, WMFilePanel *panel)
|
||||
}
|
||||
else WMSetFilePanelDirectory(panel, file);
|
||||
|
||||
free(directory_name);
|
||||
free(directory);
|
||||
free(file);
|
||||
wfree(directory_name);
|
||||
wfree(directory);
|
||||
wfree(file);
|
||||
|
||||
}
|
||||
|
||||
@@ -759,7 +759,7 @@ deleteFile(WMButton *bPre, WMFilePanel *panel)
|
||||
default:
|
||||
showError(scr, panel->win, "Can not delete '%s'.", file);
|
||||
}
|
||||
free(file);
|
||||
wfree(file);
|
||||
return;
|
||||
} else if (S_ISDIR(filestat.st_mode)) {
|
||||
buffer = wmalloc(strlen(file)+20);
|
||||
@@ -822,8 +822,8 @@ deleteFile(WMButton *bPre, WMFilePanel *panel)
|
||||
WMSetFilePanelDirectory(panel, file);
|
||||
}
|
||||
}
|
||||
free(buffer);
|
||||
free(file);
|
||||
wfree(buffer);
|
||||
wfree(file);
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -924,8 +924,8 @@ getCurrentFileName(WMFilePanel *panel)
|
||||
} else
|
||||
strcpy(tmp, file);
|
||||
|
||||
free(file);
|
||||
free(path);
|
||||
wfree(file);
|
||||
wfree(path);
|
||||
return tmp;
|
||||
} else {
|
||||
return path;
|
||||
@@ -943,7 +943,7 @@ validOpenFile(WMFilePanel *panel)
|
||||
|
||||
if (file[0] != '\0')
|
||||
haveFile = 1;
|
||||
free(file);
|
||||
wfree(file);
|
||||
|
||||
col = WMGetBrowserSelectedColumn(panel->browser);
|
||||
item = WMGetBrowserSelectedItemInColumn(panel->browser, col);
|
||||
@@ -982,10 +982,10 @@ buttonClick(WMButton *bPtr, WMFilePanel *panel)
|
||||
WMRunAlertPanel(WMWidgetScreen(panel->win), panel->win,
|
||||
"Error", "File does not exist.",
|
||||
"Ok", NULL, NULL);
|
||||
free(file);
|
||||
wfree(file);
|
||||
return;
|
||||
}
|
||||
free(file);
|
||||
wfree(file);
|
||||
}
|
||||
panel->flags.canceled = 0;
|
||||
} else
|
||||
|
||||
@@ -49,7 +49,7 @@ WMCreateFontSet(WMScreen *scrPtr, char *fontName)
|
||||
defaultString);
|
||||
}
|
||||
if (!font->font.set) {
|
||||
free(font);
|
||||
wfree(font);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
@@ -87,13 +87,13 @@ WMCreateNormalFont(WMScreen *scrPtr, char *fontName)
|
||||
font = WMHashGet(scrPtr->fontCache, fname);
|
||||
if (font) {
|
||||
WMRetainFont(font);
|
||||
free(fname);
|
||||
wfree(fname);
|
||||
return font;
|
||||
}
|
||||
|
||||
font = malloc(sizeof(WMFont));
|
||||
if (!font) {
|
||||
free(fname);
|
||||
wfree(fname);
|
||||
return NULL;
|
||||
}
|
||||
memset(font, 0, sizeof(WMFont));
|
||||
@@ -104,7 +104,7 @@ WMCreateNormalFont(WMScreen *scrPtr, char *fontName)
|
||||
|
||||
font->font.normal = XLoadQueryFont(display, fname);
|
||||
if (!font->font.normal) {
|
||||
free(font);
|
||||
wfree(font);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
@@ -158,9 +158,9 @@ WMReleaseFont(WMFont *font)
|
||||
}
|
||||
if (font->name) {
|
||||
WMHashRemove(font->screen->fontCache, font->name);
|
||||
free(font->name);
|
||||
wfree(font->name);
|
||||
}
|
||||
free(font);
|
||||
wfree(font);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -202,11 +202,11 @@ WMSystemFontOfSize(WMScreen *scrPtr, int size)
|
||||
}
|
||||
if (!font) {
|
||||
wwarning("could not load fixed font!");
|
||||
free(fontSpec);
|
||||
wfree(fontSpec);
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
free(fontSpec);
|
||||
wfree(fontSpec);
|
||||
|
||||
return font;
|
||||
}
|
||||
@@ -238,11 +238,11 @@ WMBoldSystemFontOfSize(WMScreen *scrPtr, int size)
|
||||
}
|
||||
if (!font) {
|
||||
wwarning("could not load fixed font!");
|
||||
free(fontSpec);
|
||||
wfree(fontSpec);
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
free(fontSpec);
|
||||
wfree(fontSpec);
|
||||
|
||||
return font;
|
||||
}
|
||||
@@ -354,7 +354,7 @@ makeFontSetOfSize(char *fontset, int size)
|
||||
}
|
||||
|
||||
if (newfs)
|
||||
free(newfs);
|
||||
wfree(newfs);
|
||||
newfs = tmp;
|
||||
|
||||
fontset = ptr+1;
|
||||
|
||||
@@ -137,6 +137,16 @@ notificationObserver(void *self, WMNotification *notif)
|
||||
}
|
||||
|
||||
|
||||
static void
|
||||
closeWindow(WMWidget *w, void *data)
|
||||
{
|
||||
FontPanel *panel = (FontPanel*)data;
|
||||
|
||||
WMHideFontPanel(panel);
|
||||
}
|
||||
|
||||
|
||||
|
||||
WMFontPanel*
|
||||
WMGetFontPanel(WMScreen *scr)
|
||||
{
|
||||
@@ -158,6 +168,8 @@ WMGetFontPanel(WMScreen *scr)
|
||||
WMSetWindowMinSize(panel->win, MIN_WIDTH, MIN_HEIGHT);
|
||||
WMSetViewNotifySizeChanges(WMWidgetView(panel->win), True);
|
||||
|
||||
WMSetWindowCloseAction(panel->win, closeWindow, panel);
|
||||
|
||||
panel->split = WMCreateSplitView(panel->win);
|
||||
WMResizeWidget(panel->split, DEF_WIDTH, DEF_HEIGHT - BUTTON_SPACE_HEIGHT);
|
||||
WMSetSplitViewConstrainProc(panel->split, splitViewConstrainCallback);
|
||||
@@ -283,7 +295,7 @@ WMFreeFontPanel(WMFontPanel *panel)
|
||||
WMRemoveNotificationObserver(panel);
|
||||
WMUnmapWidget(panel->win);
|
||||
WMDestroyWidget(panel->win);
|
||||
free(panel);
|
||||
wfree(panel);
|
||||
}
|
||||
|
||||
|
||||
@@ -887,7 +899,7 @@ familyClick(WMWidget *w, void *data)
|
||||
|
||||
if (oface) {
|
||||
facei = WMFindRowOfListItemWithTitle(panel->typLs, oface);
|
||||
free(oface);
|
||||
wfree(oface);
|
||||
}
|
||||
if (facei < 0) {
|
||||
facei = 0;
|
||||
@@ -904,7 +916,7 @@ familyClick(WMWidget *w, void *data)
|
||||
}
|
||||
|
||||
if (osize)
|
||||
free(osize);
|
||||
wfree(osize);
|
||||
|
||||
|
||||
preview(panel);
|
||||
@@ -957,7 +969,7 @@ typefaceClick(WMWidget *w, void *data)
|
||||
sizeClick(panel->sizLs, panel);
|
||||
|
||||
if (osize)
|
||||
free(osize);
|
||||
wfree(osize);
|
||||
|
||||
preview(panel);
|
||||
}
|
||||
|
||||
@@ -53,7 +53,7 @@ void
|
||||
WMSetFrameTitle(WMFrame *fPtr, char *title)
|
||||
{
|
||||
if (fPtr->caption)
|
||||
free(fPtr->caption);
|
||||
wfree(fPtr->caption);
|
||||
if (title)
|
||||
fPtr->caption = wstrdup(title);
|
||||
else
|
||||
@@ -187,7 +187,7 @@ WMCreateFrame(WMWidget *parent)
|
||||
|
||||
fPtr->view = W_CreateView(W_VIEW(parent));
|
||||
if (!fPtr->view) {
|
||||
free(fPtr);
|
||||
wfree(fPtr);
|
||||
return NULL;
|
||||
}
|
||||
fPtr->view->self = fPtr;
|
||||
@@ -209,7 +209,7 @@ static void
|
||||
destroyFrame(Frame *fPtr)
|
||||
{
|
||||
if (fPtr->caption)
|
||||
free(fPtr->caption);
|
||||
wfree(fPtr->caption);
|
||||
|
||||
free(fPtr);
|
||||
wfree(fPtr);
|
||||
}
|
||||
|
||||
@@ -55,7 +55,7 @@ WMCreateLabel(WMWidget *parent)
|
||||
|
||||
lPtr->view = W_CreateView(W_VIEW(parent));
|
||||
if (!lPtr->view) {
|
||||
free(lPtr);
|
||||
wfree(lPtr);
|
||||
return NULL;
|
||||
}
|
||||
lPtr->view->self = lPtr;
|
||||
@@ -132,7 +132,7 @@ void
|
||||
WMSetLabelText(WMLabel *lPtr, char *text)
|
||||
{
|
||||
if (lPtr->caption)
|
||||
free(lPtr->caption);
|
||||
wfree(lPtr->caption);
|
||||
|
||||
if (text!=NULL) {
|
||||
lPtr->caption = wstrdup(text);
|
||||
@@ -230,7 +230,7 @@ destroyLabel(Label *lPtr)
|
||||
WMReleaseColor(lPtr->textColor);
|
||||
|
||||
if (lPtr->caption)
|
||||
free(lPtr->caption);
|
||||
wfree(lPtr->caption);
|
||||
|
||||
if (lPtr->font)
|
||||
WMReleaseFont(lPtr->font);
|
||||
@@ -238,5 +238,5 @@ destroyLabel(Label *lPtr)
|
||||
if (lPtr->image)
|
||||
WMReleasePixmap(lPtr->image);
|
||||
|
||||
free(lPtr);
|
||||
wfree(lPtr);
|
||||
}
|
||||
|
||||
@@ -91,7 +91,7 @@ WMCreateList(WMWidget *parent)
|
||||
|
||||
lPtr->view = W_CreateView(W_VIEW(parent));
|
||||
if (!lPtr->view) {
|
||||
free(lPtr);
|
||||
wfree(lPtr);
|
||||
return NULL;
|
||||
}
|
||||
lPtr->view->self = lPtr;
|
||||
@@ -173,10 +173,6 @@ WMInsertListItem(WMList *lPtr, int row, char *text)
|
||||
|
||||
WMInsertInBag(lPtr->items, row, item);
|
||||
|
||||
if (row < lPtr->fullFitLines+lPtr->flags.dontFitAll-lPtr->topItem) {
|
||||
paintList(lPtr);
|
||||
}
|
||||
|
||||
/* update the scroller when idle, so that we don't waste time
|
||||
* updating it when another item is going to be added later */
|
||||
if (!lPtr->idleID) {
|
||||
@@ -213,8 +209,8 @@ WMRemoveListItem(WMList *lPtr, int row)
|
||||
|
||||
item = WMGetFromBag(lPtr->items, row);
|
||||
if (item->text)
|
||||
free(item->text);
|
||||
free(item);
|
||||
wfree(item->text);
|
||||
wfree(item);
|
||||
|
||||
WMDeleteFromBag(lPtr->items, row);
|
||||
|
||||
@@ -274,8 +270,8 @@ WMClearList(WMList *lPtr)
|
||||
|
||||
for (i = 0; i < WMGetBagItemCount(lPtr->items); i++) {
|
||||
item = WMGetFromBag(lPtr->items, i);
|
||||
free(item->text);
|
||||
free(item);
|
||||
wfree(item->text);
|
||||
wfree(item);
|
||||
}
|
||||
WMEmptyBag(lPtr->items);
|
||||
|
||||
@@ -791,10 +787,10 @@ destroyList(List *lPtr)
|
||||
|
||||
for (i = 0; i < WMGetBagItemCount(lPtr->items); i++) {
|
||||
item = WMGetFromBag(lPtr->items, i);
|
||||
free(item->text);
|
||||
free(item);
|
||||
wfree(item->text);
|
||||
wfree(item);
|
||||
}
|
||||
WMFreeBag(lPtr->items);
|
||||
|
||||
free(lPtr);
|
||||
wfree(lPtr);
|
||||
}
|
||||
|
||||
@@ -77,7 +77,7 @@ WMDestroyAlertPanel(WMAlertPanel *panel)
|
||||
{
|
||||
WMUnmapWidget(panel->win);
|
||||
WMDestroyWidget(panel->win);
|
||||
free(panel);
|
||||
wfree(panel);
|
||||
}
|
||||
|
||||
|
||||
@@ -293,7 +293,7 @@ WMDestroyInputPanel(WMInputPanel *panel)
|
||||
WMRemoveNotificationObserver(panel);
|
||||
WMUnmapWidget(panel->win);
|
||||
WMDestroyWidget(panel->win);
|
||||
free(panel);
|
||||
wfree(panel);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -26,7 +26,7 @@ WMReleasePixmap(WMPixmap *pixmap)
|
||||
XFreePixmap(pixmap->screen->display, pixmap->pixmap);
|
||||
if (pixmap->mask)
|
||||
XFreePixmap(pixmap->screen->display, pixmap->mask);
|
||||
free(pixmap);
|
||||
wfree(pixmap);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -83,7 +83,7 @@ WMCreatePopUpButton(WMWidget *parent)
|
||||
|
||||
bPtr->view = W_CreateView(W_VIEW(parent));
|
||||
if (!bPtr->view) {
|
||||
free(bPtr);
|
||||
wfree(bPtr);
|
||||
return NULL;
|
||||
}
|
||||
bPtr->view->self = bPtr;
|
||||
@@ -211,9 +211,9 @@ WMRemovePopUpButtonItem(WMPopUpButton *bPtr, int index)
|
||||
|
||||
|
||||
if (index == 0) {
|
||||
free(bPtr->items->text);
|
||||
wfree(bPtr->items->text);
|
||||
tmp = bPtr->items->nextPtr;
|
||||
free(bPtr->items);
|
||||
wfree(bPtr->items);
|
||||
bPtr->items = tmp;
|
||||
} else {
|
||||
ItemList *next;
|
||||
@@ -224,8 +224,8 @@ WMRemovePopUpButtonItem(WMPopUpButton *bPtr, int index)
|
||||
tmp = tmp->nextPtr;
|
||||
next = tmp->nextPtr->nextPtr;
|
||||
|
||||
free(tmp->nextPtr->text);
|
||||
free(tmp->nextPtr);
|
||||
wfree(tmp->nextPtr->text);
|
||||
wfree(tmp->nextPtr);
|
||||
|
||||
tmp->nextPtr = next;
|
||||
}
|
||||
@@ -303,7 +303,7 @@ void
|
||||
WMSetPopUpButtonText(WMPopUpButton *bPtr, char *text)
|
||||
{
|
||||
if (bPtr->caption)
|
||||
free(bPtr->caption);
|
||||
wfree(bPtr->caption);
|
||||
if (text)
|
||||
bPtr->caption = wstrdup(text);
|
||||
else
|
||||
@@ -823,17 +823,17 @@ destroyPopUpButton(PopUpButton *bPtr)
|
||||
|
||||
itemPtr = bPtr->items;
|
||||
while (itemPtr!=NULL) {
|
||||
free(itemPtr->text);
|
||||
wfree(itemPtr->text);
|
||||
tmp = itemPtr->nextPtr;
|
||||
free(itemPtr);
|
||||
wfree(itemPtr);
|
||||
itemPtr = tmp;
|
||||
}
|
||||
|
||||
if (bPtr->caption)
|
||||
free(bPtr->caption);
|
||||
wfree(bPtr->caption);
|
||||
|
||||
/* have to destroy explicitly because the popup is a toplevel */
|
||||
W_DestroyView(bPtr->menuView);
|
||||
|
||||
free(bPtr);
|
||||
wfree(bPtr);
|
||||
}
|
||||
|
||||
@@ -62,7 +62,7 @@ WMProgressIndicator*
|
||||
|
||||
pPtr->view = W_CreateView(W_VIEW(parent));
|
||||
if (!pPtr->view) {
|
||||
free(pPtr);
|
||||
wfree(pPtr);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
@@ -293,6 +293,6 @@ destroyProgressIndicator(ProgressIndicator *pPtr)
|
||||
{
|
||||
WMRemoveNotificationObserver(pPtr);
|
||||
|
||||
free(pPtr);
|
||||
wfree(pPtr);
|
||||
}
|
||||
|
||||
|
||||
@@ -97,7 +97,7 @@ WMCreateScroller(WMWidget *parent)
|
||||
|
||||
sPtr->view = W_CreateView(W_VIEW(parent));
|
||||
if (!sPtr->view) {
|
||||
free(sPtr);
|
||||
wfree(sPtr);
|
||||
return NULL;
|
||||
}
|
||||
sPtr->view->self = sPtr;
|
||||
@@ -864,6 +864,6 @@ destroyScroller(Scroller *sPtr)
|
||||
WMDeleteTimerHandler(sPtr->timerID);
|
||||
}
|
||||
|
||||
free(sPtr);
|
||||
wfree(sPtr);
|
||||
}
|
||||
|
||||
|
||||
@@ -60,13 +60,13 @@ WMCreateScrollView(WMWidget *parent)
|
||||
|
||||
sPtr->view = W_CreateView(W_VIEW(parent));
|
||||
if (!sPtr->view) {
|
||||
free(sPtr);
|
||||
wfree(sPtr);
|
||||
return NULL;
|
||||
}
|
||||
sPtr->viewport = W_CreateView(sPtr->view);
|
||||
if (!sPtr->view) {
|
||||
W_DestroyView(sPtr->view);
|
||||
free(sPtr);
|
||||
wfree(sPtr);
|
||||
return NULL;
|
||||
}
|
||||
sPtr->view->self = sPtr;
|
||||
@@ -499,6 +499,6 @@ destroyScrollView(ScrollView *sPtr)
|
||||
{
|
||||
|
||||
|
||||
free(sPtr);
|
||||
wfree(sPtr);
|
||||
}
|
||||
|
||||
|
||||
@@ -79,7 +79,7 @@ WMCreateSlider(WMWidget *parent)
|
||||
|
||||
sPtr->view = W_CreateView(W_VIEW(parent));
|
||||
if (!sPtr->view) {
|
||||
free(sPtr);
|
||||
wfree(sPtr);
|
||||
return NULL;
|
||||
}
|
||||
sPtr->view->self = sPtr;
|
||||
@@ -550,6 +550,6 @@ destroySlider(Slider *sPtr)
|
||||
|
||||
WMRemoveNotificationObserver(sPtr);
|
||||
|
||||
free(sPtr);
|
||||
wfree(sPtr);
|
||||
}
|
||||
|
||||
|
||||
@@ -101,7 +101,7 @@ WMCreateSplitView(WMWidget *parent)
|
||||
|
||||
sPtr->view = W_CreateView(W_VIEW(parent));
|
||||
if (!sPtr->view) {
|
||||
free(sPtr);
|
||||
wfree(sPtr);
|
||||
return NULL;
|
||||
}
|
||||
sPtr->view->self = sPtr;
|
||||
@@ -389,6 +389,6 @@ destroySplitView(SplitView *sPtr)
|
||||
{
|
||||
WMRemoveNotificationObserver(sPtr);
|
||||
|
||||
free(sPtr);
|
||||
wfree(sPtr);
|
||||
}
|
||||
|
||||
|
||||
@@ -101,7 +101,7 @@ WMCreateTabView(WMWidget *parent)
|
||||
|
||||
tPtr->view = W_CreateView(W_VIEW(parent));
|
||||
if (!tPtr->view) {
|
||||
free(tPtr);
|
||||
wfree(tPtr);
|
||||
return NULL;
|
||||
}
|
||||
tPtr->view->self = tPtr;
|
||||
@@ -529,13 +529,13 @@ destroyTabView(TabView *tPtr)
|
||||
WMSetTabViewItemView(tPtr->items[i], NULL);
|
||||
WMDestroyTabViewItem(tPtr->items[i]);
|
||||
}
|
||||
free(tPtr->items);
|
||||
wfree(tPtr->items);
|
||||
|
||||
WMReleaseColor(tPtr->lightGray);
|
||||
WMReleaseColor(tPtr->tabColor);
|
||||
WMReleaseFont(tPtr->font);
|
||||
|
||||
free(tPtr);
|
||||
wfree(tPtr);
|
||||
}
|
||||
|
||||
/******************************************************************/
|
||||
@@ -642,7 +642,7 @@ void
|
||||
WMSetTabViewItemLabel(WMTabViewItem *item, char *label)
|
||||
{
|
||||
if (item->label)
|
||||
free(item->label);
|
||||
wfree(item->label);
|
||||
|
||||
item->label = wstrdup(label);
|
||||
|
||||
@@ -676,10 +676,10 @@ void
|
||||
WMDestroyTabViewItem(WMTabViewItem *item)
|
||||
{
|
||||
if (item->label)
|
||||
free(item->label);
|
||||
wfree(item->label);
|
||||
|
||||
if (item->view)
|
||||
W_DestroyView(item->view);
|
||||
|
||||
free(item);
|
||||
wfree(item);
|
||||
}
|
||||
|
||||
@@ -291,7 +291,7 @@ WMCreateTextField(WMWidget *parent)
|
||||
|
||||
tPtr->view = W_CreateView(W_VIEW(parent));
|
||||
if (!tPtr->view) {
|
||||
free(tPtr);
|
||||
wfree(tPtr);
|
||||
return NULL;
|
||||
}
|
||||
tPtr->view->self = tPtr;
|
||||
@@ -362,7 +362,7 @@ WMInsertTextFieldText(WMTextField *tPtr, char *text, int position)
|
||||
/* check if buffer will hold the text */
|
||||
if (len + tPtr->textLen >= tPtr->bufferSize) {
|
||||
tPtr->bufferSize = tPtr->textLen + len + TEXT_BUFFER_INCR;
|
||||
tPtr->text = realloc(tPtr->text, tPtr->bufferSize);
|
||||
tPtr->text = wrealloc(tPtr->text, tPtr->bufferSize);
|
||||
}
|
||||
|
||||
if (position < 0 || position >= tPtr->textLen) {
|
||||
@@ -446,7 +446,7 @@ WMSetTextFieldText(WMTextField *tPtr, char *text)
|
||||
|
||||
if (tPtr->textLen >= tPtr->bufferSize) {
|
||||
tPtr->bufferSize = tPtr->textLen + TEXT_BUFFER_INCR;
|
||||
tPtr->text = realloc(tPtr->text, tPtr->bufferSize);
|
||||
tPtr->text = wrealloc(tPtr->text, tPtr->bufferSize);
|
||||
}
|
||||
strcpy(tPtr->text, text);
|
||||
}
|
||||
@@ -718,7 +718,7 @@ paintCursor(TextField *tPtr)
|
||||
tPtr->view->size.height - tPtr->offsetWidth - 1);
|
||||
|
||||
if (tPtr->flags.secure)
|
||||
free(text);
|
||||
wfree(text);
|
||||
}
|
||||
|
||||
|
||||
@@ -882,7 +882,7 @@ paintTextField(TextField *tPtr)
|
||||
}
|
||||
|
||||
if (tPtr->flags.secure)
|
||||
free(text);
|
||||
wfree(text);
|
||||
XCopyArea(screen->display, drawbuffer, view->window,
|
||||
screen->copyGC, 0,0, view->size.width,
|
||||
view->size.height,0,0);
|
||||
@@ -1437,7 +1437,7 @@ destroyTextField(TextField *tPtr)
|
||||
WMRemoveNotificationObserver(tPtr);
|
||||
|
||||
if (tPtr->text)
|
||||
free(tPtr->text);
|
||||
wfree(tPtr->text);
|
||||
|
||||
free(tPtr);
|
||||
wfree(tPtr);
|
||||
}
|
||||
|
||||
@@ -133,13 +133,13 @@ WMDeleteTimerWithClientData(void *cdata)
|
||||
tmp = timerHandler;
|
||||
if (tmp->clientData==cdata) {
|
||||
timerHandler = tmp->next;
|
||||
free(tmp);
|
||||
wfree(tmp);
|
||||
} else {
|
||||
while (tmp->next) {
|
||||
if (tmp->next->clientData==cdata) {
|
||||
handler = tmp->next;
|
||||
tmp->next = handler->next;
|
||||
free(handler);
|
||||
wfree(handler);
|
||||
break;
|
||||
}
|
||||
tmp = tmp->next;
|
||||
@@ -160,12 +160,12 @@ WMDeleteTimerHandler(WMHandlerID handlerID)
|
||||
tmp = timerHandler;
|
||||
if (tmp==handler) {
|
||||
timerHandler = handler->next;
|
||||
free(handler);
|
||||
wfree(handler);
|
||||
} else {
|
||||
while (tmp->next) {
|
||||
if (tmp->next==handler) {
|
||||
tmp->next=handler->next;
|
||||
free(handler);
|
||||
wfree(handler);
|
||||
break;
|
||||
}
|
||||
tmp = tmp->next;
|
||||
@@ -214,12 +214,12 @@ WMDeleteIdleHandler(WMHandlerID handlerID)
|
||||
tmp = idleHandler;
|
||||
if (tmp == handler) {
|
||||
idleHandler = handler->next;
|
||||
free(handler);
|
||||
wfree(handler);
|
||||
} else {
|
||||
while (tmp->next) {
|
||||
if (tmp->next == handler) {
|
||||
tmp->next = handler->next;
|
||||
free(handler);
|
||||
wfree(handler);
|
||||
break;
|
||||
}
|
||||
tmp = tmp->next;
|
||||
@@ -260,12 +260,12 @@ WMDeleteInputHandler(WMHandlerID handlerID)
|
||||
tmp = inputHandler;
|
||||
if (tmp == handler) {
|
||||
inputHandler = handler->next;
|
||||
free(handler);
|
||||
wfree(handler);
|
||||
} else {
|
||||
while (tmp->next) {
|
||||
if (tmp->next == handler) {
|
||||
tmp->next = handler->next;
|
||||
free(handler);
|
||||
wfree(handler);
|
||||
break;
|
||||
}
|
||||
tmp = tmp->next;
|
||||
@@ -293,7 +293,7 @@ checkIdleHandlers()
|
||||
tmp = handler->next;
|
||||
(*handler->callback)(handler->clientData);
|
||||
/* remove the handler */
|
||||
free(handler);
|
||||
wfree(handler);
|
||||
|
||||
handler = tmp;
|
||||
}
|
||||
@@ -315,7 +315,7 @@ checkTimerHandlers()
|
||||
timerHandler = timerHandler->next;
|
||||
handler->next = NULL;
|
||||
(*handler->callback)(handler->clientData);
|
||||
free(handler);
|
||||
wfree(handler);
|
||||
}
|
||||
|
||||
W_FlushASAPNotificationQueue();
|
||||
@@ -453,7 +453,7 @@ handleInputEvents(Bool waitForInput)
|
||||
}
|
||||
}
|
||||
|
||||
free(fds);
|
||||
wfree(fds);
|
||||
|
||||
W_FlushASAPNotificationQueue();
|
||||
|
||||
|
||||
@@ -370,7 +370,7 @@ destroyView(W_View *view)
|
||||
if (info) {
|
||||
if (info->toplevel==view) {
|
||||
view->screen->focusInfo = info->next;
|
||||
free(info);
|
||||
wfree(info);
|
||||
} else {
|
||||
while (info->next) {
|
||||
if (info->next->toplevel == view)
|
||||
@@ -379,7 +379,7 @@ destroyView(W_View *view)
|
||||
}
|
||||
if (info->next) {
|
||||
W_FocusInfo *next = info->next->next;
|
||||
free(info->next);
|
||||
wfree(info->next);
|
||||
info->next = next;
|
||||
}
|
||||
/* else the toplevel did not have any focused subview */
|
||||
@@ -416,12 +416,12 @@ destroyView(W_View *view)
|
||||
W_CleanUpEvents(view);
|
||||
#if 0
|
||||
if (view->dragSourceProcs)
|
||||
free(view->dragSourceProcs);
|
||||
wfree(view->dragSourceProcs);
|
||||
|
||||
if (view->dragDestinationProcs)
|
||||
free(view->dragDestinationProcs);
|
||||
wfree(view->dragDestinationProcs);
|
||||
#endif
|
||||
free(view);
|
||||
wfree(view);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -162,7 +162,7 @@ WMCreateWindowWithStyle(WMScreen *screen, char *name, int style)
|
||||
|
||||
win->view = W_CreateTopView(screen);
|
||||
if (!win->view) {
|
||||
free(win);
|
||||
wfree(win);
|
||||
return NULL;
|
||||
}
|
||||
win->view->self = win;
|
||||
@@ -202,7 +202,7 @@ WMSetWindowTitle(WMWindow *win, char *title)
|
||||
int result;
|
||||
|
||||
if (win->title!=NULL)
|
||||
free(win->title);
|
||||
wfree(win->title);
|
||||
if (title!=NULL)
|
||||
win->title = wstrdup(title);
|
||||
else
|
||||
@@ -247,7 +247,7 @@ WMSetWindowCloseAction(WMWindow *win, WMAction *action, void *clientData)
|
||||
XSetWMProtocols(scr->display, win->view->window, newAtoms, count);
|
||||
if (atoms)
|
||||
XFree(atoms);
|
||||
free(newAtoms);
|
||||
wfree(newAtoms);
|
||||
} else if (!action && win->closeAction) {
|
||||
int i, ncount;
|
||||
|
||||
@@ -265,7 +265,7 @@ WMSetWindowCloseAction(WMWindow *win, WMAction *action, void *clientData)
|
||||
ncount);
|
||||
if (atoms)
|
||||
XFree(atoms);
|
||||
free(newAtoms);
|
||||
wfree(newAtoms);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -580,7 +580,7 @@ WMSetWindowMiniwindowTitle(WMWindow *win, char *title)
|
||||
if ((win->miniTitle && !title) || (!win->miniTitle && title)
|
||||
|| (title && win->miniTitle && strcoll(title, win->miniTitle)!=0)) {
|
||||
if (win->miniTitle)
|
||||
free(win->miniTitle);
|
||||
wfree(win->miniTitle);
|
||||
|
||||
if (title)
|
||||
win->miniTitle = wstrdup(title);
|
||||
@@ -703,11 +703,11 @@ destroyWindow(_Window *win)
|
||||
}
|
||||
|
||||
if (win->title) {
|
||||
free(win->title);
|
||||
wfree(win->title);
|
||||
}
|
||||
|
||||
if (win->miniTitle) {
|
||||
free(win->miniTitle);
|
||||
wfree(win->miniTitle);
|
||||
}
|
||||
|
||||
if (win->miniImage) {
|
||||
@@ -715,9 +715,9 @@ destroyWindow(_Window *win)
|
||||
}
|
||||
|
||||
if (win->wname)
|
||||
free(win->wname);
|
||||
wfree(win->wname);
|
||||
|
||||
free(win);
|
||||
wfree(win);
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user