From: =?utf-8?b?0L3QsNCx?= <nabijaczleweli@nabijaczleweli.xyz>
Date: Fri, 31 Jan 2025 14:38:34 +0100
Subject: Fix broken negation for bitwise and

---
 libdisasm/x86_format.c | 11 ++---------
 1 file changed, 2 insertions(+), 9 deletions(-)

diff --git a/libdisasm/x86_format.c b/libdisasm/x86_format.c
index 2b6944c..8642cd9 100644
--- a/libdisasm/x86_format.c
+++ b/libdisasm/x86_format.c
@@ -286,7 +286,7 @@ static int format_expr( x86_ea_t *ea, char *buf, int len,
 static int format_seg( x86_op_t *op, char *buf, int len,
                        enum x86_asm_format format ) {
         int len_orig = len;
-        char *reg = "";
+        char *reg;
 
         if (! op || ! buf || ! len || ! op->flags) {
                 return(0);
@@ -294,9 +294,6 @@ static int format_seg( x86_op_t *op, char *buf, int len,
         if ( op->type != op_offset && op->type != op_expression ){
                 return(0);
         }
-        if (! (int) op->flags & 0xF00 ) {
-                return(0);
-        }
 
         switch (op->flags & 0xF00) {
                 case op_es_seg: reg = "es"; break;
@@ -306,11 +303,7 @@ static int format_seg( x86_op_t *op, char *buf, int len,
                 case op_fs_seg: reg = "fs"; break;
                 case op_gs_seg: reg = "gs"; break;
                 default:
-                        break;
-        }
-
-        if (! reg[0] ) {
-                return( 0 );
+                        return( 0 );
         }
 
         switch( format ) {
