passepartout overlay wasnt written into thumbnails

This commit is contained in:
Campbell Barton
2010-06-01 13:06:13 +00:00
parent 75e67144ab
commit 16ca0163d8
4 changed files with 6 additions and 8 deletions

View File

@@ -73,7 +73,7 @@ void IMB_thumb_makedirs();
/* special function for loading a thumbnail embedded into a blend file */
ImBuf *IMB_loadblend_thumb(const char *path);
void IMB_overlayblend_thumb(int *thumb, int width, int height, float aspect);
void IMB_overlayblend_thumb(unsigned int *thumb, int width, int height, float aspect);
#endif /* _IMB_THUMBS_H */

View File

@@ -347,9 +347,7 @@ ImBuf* IMB_thumb_create(const char* path, ThumbSize size, ThumbSource source, Im
if (IMB_saveiff(img, temp, IB_rect | IB_metadata)) {
#ifndef WIN32
chmod(temp, S_IRUSR | S_IWUSR);
#endif
printf("Saving: %s\n", tpath);
#endif
BLI_rename(temp, tpath);
}

View File

@@ -131,7 +131,7 @@ thumb_error:
/* add a fake passepartout overlay to a byte buffer, use for blend file thumbnails */
#define MARGIN 2
void IMB_overlayblend_thumb(int *thumb, int width, int height, float aspect)
void IMB_overlayblend_thumb(unsigned int *thumb, int width, int height, float aspect)
{
unsigned char *px= (unsigned char *)thumb;
int margin_l = MARGIN;

View File

@@ -510,6 +510,9 @@ static ImBuf *blend_file_thumb(const char *path, Scene *scene, int **thumb_pt)
/* dirty oversampling */
IMB_scaleImBuf(ibuf, BLEN_THUMB_SIZE, BLEN_THUMB_SIZE);
/* add pretty overlay */
IMB_overlayblend_thumb(ibuf->rect, ibuf->x, ibuf->y, aspect);
/* first write into thumb buffer */
thumb= MEM_mallocN(((2 + (BLEN_THUMB_SIZE * BLEN_THUMB_SIZE))) * sizeof(int), "write_file thumb");
@@ -518,9 +521,6 @@ static ImBuf *blend_file_thumb(const char *path, Scene *scene, int **thumb_pt)
thumb[1] = BLEN_THUMB_SIZE;
memcpy(thumb + 2, ibuf->rect, BLEN_THUMB_SIZE * BLEN_THUMB_SIZE * sizeof(int));
/* add pretty overlay */
IMB_overlayblend_thumb(thumb + 2, BLEN_THUMB_SIZE, BLEN_THUMB_SIZE, aspect);
}
else {
/* '*thumb_pt' needs to stay NULL to prevent a bad thumbnail from being handled */