diff options
author | Mike Gabriel <mike.gabriel@das-netzwerkteam.de> | 2019-08-27 08:27:42 +0200 |
---|---|---|
committer | Mike Gabriel <mike.gabriel@das-netzwerkteam.de> | 2019-08-27 08:27:42 +0200 |
commit | 6f80a06fb96725e7eadf846bf0e727821aadbf47 (patch) | |
tree | 64846b3be22e28618ffe285db02d55fa5d4de709 /nx-X11/programs/Xserver/hw/nxagent/Image.c | |
parent | 8b15d574b49857cdf4df0fd813d68b750d8aee5f (diff) | |
parent | f39b81d31bc7d0427ea9cca04d0e4a21579d7383 (diff) | |
download | nx-libs-6f80a06fb96725e7eadf846bf0e727821aadbf47.tar.gz nx-libs-6f80a06fb96725e7eadf846bf0e727821aadbf47.tar.bz2 nx-libs-6f80a06fb96725e7eadf846bf0e727821aadbf47.zip |
Merge branch 'uli42-pr/safe_free' into 3.6.x
Attributes GH PR #826: https://github.com/ArcticaProject/nx-libs/pull/826
Diffstat (limited to 'nx-X11/programs/Xserver/hw/nxagent/Image.c')
-rw-r--r-- | nx-X11/programs/Xserver/hw/nxagent/Image.c | 27 |
1 files changed, 12 insertions, 15 deletions
diff --git a/nx-X11/programs/Xserver/hw/nxagent/Image.c b/nx-X11/programs/Xserver/hw/nxagent/Image.c index a5e19724b..a7bacaf85 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Image.c +++ b/nx-X11/programs/Xserver/hw/nxagent/Image.c @@ -455,7 +455,7 @@ FIXME: Here the split trap is always set and so the caching of if (nxagentUnpackAlpha[resource] != NULL) { - free(nxagentUnpackAlpha[resource] -> data); + SAFE_free(nxagentUnpackAlpha[resource] -> data); } else if ((nxagentUnpackAlpha[resource] = malloc(sizeof(UnpackAlphaRec))) == NULL) { @@ -463,7 +463,7 @@ FIXME: Here the split trap is always set and so the caching of fprintf(stderr, "nxagentSetUnpackAlpha: PANIC! Can't allocate data for the alpha structure.\n"); #endif - free(data); + SAFE_free(data); return; } @@ -483,7 +483,7 @@ FIXME: Here the split trap is always set and so the caching of resource, size); #endif - free(data); + SAFE_free(data); } } @@ -1567,20 +1567,20 @@ nxagentPutSubImageEnd: nxagentImageStatistics.totalEncoded, nxagentImageStatistics.totalAdded); #endif - free(packedChecksum); + SAFE_free(packedChecksum); if (packedImage != NULL) { if (packedImage -> data != NULL && packedImage -> data != plainImage -> data) { - free(packedImage -> data); + SAFE_free(packedImage -> data); } - free(packedImage); + SAFE_free(packedImage); } - free(plainImage); + SAFE_free(plainImage); } void nxagentGetImage(DrawablePtr pDrawable, int x, int y, int w, int h, @@ -1634,11 +1634,8 @@ void nxagentResetAlphaCache(void) { if (nxagentUnpackAlpha[i]) { - free(nxagentUnpackAlpha[i] -> data); - - free(nxagentUnpackAlpha[i]); - - nxagentUnpackAlpha[i] = NULL; + SAFE_free(nxagentUnpackAlpha[i] -> data); + SAFE_free(nxagentUnpackAlpha[i]); } } } @@ -1716,7 +1713,7 @@ int nxagentScaleImage(int x, int y, unsigned xRatio, unsigned yRatio, if (newImage -> data == NULL) { - free(newImage); + SAFE_free(newImage); #ifdef PANIC fprintf(stderr, "nxagentScaleImage: PANIC! Failed to create the target image data.\n"); @@ -1784,8 +1781,8 @@ int nxagentScaleImage(int x, int y, unsigned xRatio, unsigned yRatio, } } - free((char *) image -> obdata); - free((char *) image); + SAFE_free(image -> obdata); + SAFE_free(image); *pImage = newImage; |