int dlt_buffer_free_dynamic(DltBuffer *buf)
{
- if(!buf->mem) {
+ if(!buf->shm) {
// buffer not initialised
dlt_log(LOG_ERR,"Buffer: Buffer not initialised\n");
return -1; /* ERROR */
}
free(buf->shm);
+ buf->shm = 0;
+ buf->mem = 0;
return 0;
}
int write, read, count;
DltBufferBlockHead head;
- if(!buf->mem) {
+ if(!buf->shm) {
// buffer not initialised
dlt_log(LOG_ERR,"Buffer: Buffer not initialised\n");
return -1; /* ERROR */
char head_compare[] = DLT_BUFFER_HEAD;
DltBufferBlockHead head;
- if(!buf->mem) {
+ if(!buf->shm) {
// shm not initialised
dlt_log(LOG_ERR,"Buffer: SHM not initialised\n");
return -1; /* ERROR */
int write, read, count;
char str[256];
+ /* check if buffer available */
+ if(!buf->shm)
+ return;
+
write = ((int*)(buf->shm))[0];
read = ((int*)(buf->shm))[1];
count = ((int*)(buf->shm))[2];
{
int write, read, count;
+ /* check if buffer available */
+ if(!buf->shm)
+ return 0;
+
write = ((int*)(buf->shm))[0];
read = ((int*)(buf->shm))[1];
count = ((int*)(buf->shm))[2];
int dlt_buffer_get_message_count(DltBuffer *buf)
{
- return ((int*)(buf->shm))[2];
+ /* check if buffer available */
+ if(!buf->shm)
+ return 0;
+
+ return ((int*)(buf->shm))[2];
}
#if !defined (__WIN32__)