~siretart/ubuntu/utopic/blender/libav10

« back to all changes in this revision

Viewing changes to source/blender/blenlib/intern/gsqueue.c

  • Committer: Package Import Robot
  • Author(s): Matthias Klose
  • Date: 2014-02-19 11:24:23 UTC
  • mfrom: (14.2.23 sid)
  • Revision ID: package-import@ubuntu.com-20140219112423-rkmaz2m7ha06d4tk
Tags: 2.69-3ubuntu1
* Merge with Debian; remaining changes:
  - Configure without OpenImageIO on armhf, as it is not available on
    Ubuntu.

Show diffs side-by-side

added added

removed removed

Lines of Context:
35
35
 
36
36
#include "BLI_utildefines.h"
37
37
#include "BLI_gsqueue.h"
 
38
#include "BLI_strict_flags.h"
38
39
 
39
40
typedef struct _GSQueueElem GSQueueElem;
40
41
struct _GSQueueElem {
93
94
 */
94
95
void BLI_gsqueue_peek(GSQueue *gq, void *item_r)
95
96
{
96
 
        memcpy(item_r, &gq->head[1], gq->elem_size);
 
97
        memcpy(item_r, &gq->head[1], (size_t)gq->elem_size);
97
98
}
98
99
 
99
100
/**
114
115
                gq->head = gq->head->next;
115
116
        }
116
117
        
117
 
        if (item_r) memcpy(item_r, &elem[1], gq->elem_size);
 
118
        if (item_r) memcpy(item_r, &elem[1], (size_t)gq->elem_size);
118
119
        MEM_freeN(elem);
119
120
}
120
121
 
130
131
        
131
132
        /* compare: prevent events added double in row */
132
133
        if (!BLI_gsqueue_is_empty(gq)) {
133
 
                if (0 == memcmp(item, &gq->head[1], gq->elem_size))
 
134
                if (0 == memcmp(item, &gq->head[1], (size_t)gq->elem_size))
134
135
                        return;
135
136
        }
136
 
        elem = MEM_mallocN(sizeof(*elem) + gq->elem_size, "gqueue_push");
137
 
        memcpy(&elem[1], item, gq->elem_size);
 
137
        elem = MEM_mallocN(sizeof(*elem) + (size_t)gq->elem_size, "gqueue_push");
 
138
        memcpy(&elem[1], item, (size_t)gq->elem_size);
138
139
        elem->next = NULL;
139
140
        
140
141
        if (BLI_gsqueue_is_empty(gq)) {
154
155
 */
155
156
void BLI_gsqueue_pushback(GSQueue *gq, void *item)
156
157
{
157
 
        GSQueueElem *elem = MEM_mallocN(sizeof(*elem) + gq->elem_size, "gqueue_push");
158
 
        memcpy(&elem[1], item, gq->elem_size);
 
158
        GSQueueElem *elem = MEM_mallocN(sizeof(*elem) + (size_t)gq->elem_size, "gqueue_push");
 
159
        memcpy(&elem[1], item, (size_t)gq->elem_size);
159
160
        elem->next = gq->head;
160
161
 
161
162
        if (BLI_gsqueue_is_empty(gq)) {
176
177
        }
177
178
        MEM_freeN(gq);
178
179
}
179
 
 
180