[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [13760] trunk/blender/source/blender/ blenloader/intern/readfile.c: Crasher in patch for premul flag: missing NULL check
Ton Roosendaal
ton at blender.org
Tue Feb 19 10:00:40 CET 2008
Revision: 13760
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=13760
Author: ton
Date: 2008-02-19 10:00:39 +0100 (Tue, 19 Feb 2008)
Log Message:
-----------
Crasher in patch for premul flag: missing NULL check
Also converted ugly short pointer casting with the standard ID
define GS(), Get Shorty!
Modified Paths:
--------------
trunk/blender/source/blender/blenloader/intern/readfile.c
Modified: trunk/blender/source/blender/blenloader/intern/readfile.c
===================================================================
--- trunk/blender/source/blender/blenloader/intern/readfile.c 2008-02-18 23:50:12 UTC (rev 13759)
+++ trunk/blender/source/blender/blenloader/intern/readfile.c 2008-02-19 09:00:39 UTC (rev 13760)
@@ -7464,7 +7464,9 @@
for (tex=main->tex.first; tex; tex=tex->id.next) {
if (tex->ima) {
image = newlibadr(fd, lib, tex->ima);
- if (image->flag & IMA_OLDFLAG) tex->iuser.flag |= IMA_DO_PREMUL;
+ if(image)
+ if (image->flag & IMA_OLDFLAG)
+ tex->iuser.flag |= IMA_DO_PREMUL;
}
}
@@ -7473,7 +7475,7 @@
if (scene->nodetree) {
for (node=scene->nodetree->nodes.first; node; node=node->next) {
ID *nodeid = newlibadr(fd, lib, node->id);
- if (node->storage && nodeid && *(short*)nodeid->name == ID_IM) {
+ if (node->storage && nodeid && GS(nodeid->name) == ID_IM) {
image = (Image*) nodeid;
iuser = node->storage;
if (image->flag & IMA_OLDFLAG) iuser->flag |= IMA_DO_PREMUL;
@@ -7487,7 +7489,7 @@
if (ntree->type == NTREE_COMPOSIT) {
for (node=ntree->nodes.first; node; node=node->next) {
ID *nodeid = newlibadr(fd, lib, node->id);
- if (node->storage && nodeid && *(short*)nodeid->name == ID_IM) {
+ if (node->storage && nodeid && GS(nodeid->name) == ID_IM) {
image = (Image*) nodeid;
iuser = node->storage;
if (image->flag & IMA_OLDFLAG) iuser->flag |= IMA_DO_PREMUL;
More information about the Bf-blender-cvs
mailing list