list end of trace fix with selection
[lttv.git] / ltt / branches / poly / ltt / event.c
index 3f8dab9c378224c6d7328daa042f6c1f6b88d7c1..a5b046814027e30f74b3f9410518a85284cebdb0 100644 (file)
@@ -622,7 +622,8 @@ float ltt_event_get_float(LttEvent *e, LttField *f)
   if(reverse_byte_order == 0) return *(float *)(e->data + f->offset_root);
   else{
     void *ptr = e->data + f->offset_root;
-    return *(float*)bswap_32(*(guint32*)ptr);
+    guint32 value = bswap_32(*(guint32*)ptr);
+    return *(float*)&value;
   }
 }
 
@@ -636,7 +637,8 @@ double ltt_event_get_double(LttEvent *e, LttField *f)
   if(reverse_byte_order == 0) return *(double *)(e->data + f->offset_root);
   else {
     void *ptr = e->data + f->offset_root;
-    return *(double*)bswap_64(*(guint64*)ptr);
+    guint64 value = bswap_64(*(guint64*)ptr);
+    return *(double*)&value;
   }
 }
 
This page took 0.0231 seconds and 4 git commands to generate.