# HG changeset patch
# User laurent
# Date 1260533062 -3600
# Node ID bf6f623d745006bcd44d8af6b47aa92dd68fd9d5
# Parent  24629d4fc8051fb98b0375db1e5a8f6a47d0cf9a
Bug on testing Retain and Force flags fixed

diff -r 24629d4fc805 -r bf6f623d7450 targets/plc_debug.c
--- a/targets/plc_debug.c	Fri Dec 11 13:03:44 2009 +0100
+++ b/targets/plc_debug.c	Fri Dec 11 13:04:22 2009 +0100
@@ -65,7 +65,7 @@
 #define __BufferDebugDataIterator_case_p(TYPENAME)\
         case TYPENAME##_P_ENUM :\
             *flags = ((__IEC_##TYPENAME##_p *)varp)->flags;\
-            if (*flags && __IEC_FORCE_FLAG)\
+            if (*flags & __IEC_FORCE_FLAG)\
                *ptrvalue = &((__IEC_##TYPENAME##_p *)varp)->fvalue;\
             else\
                *ptrvalue = ((__IEC_##TYPENAME##_p *)varp)->value;\
@@ -90,7 +90,7 @@
     char flags = 0;
     UnpackVar(varp, vartype, &ptrvalue, &flags);
 
-    if(flags && __IEC_RETAIN_FLAG){
+    if(flags & __IEC_RETAIN_FLAG){
         USINT size = __get_type_enum_size(vartype);
         /* compute next cursor positon*/
         unsigned int next_retain_offset = retain_offset + size;