[Pkg-clamav-commits] [SCM] Debian repository for ClamAV branch, debian/unstable, updated. debian/0.95+dfsg-1-6156-g094ec9b

Török Edvin edwin at clamav.net
Sun Apr 4 01:11:14 UTC 2010


The following commit has been merged in the debian/unstable branch:
commit 124af5e8a5937c48118bec7c51d487c627900199
Author: Török Edvin <edwin at clamav.net>
Date:   Wed Dec 9 11:41:20 2009 +0200

    Trace formatting fixes.

diff --git a/libclamav/bytecode_api.c b/libclamav/bytecode_api.c
index e34af45..e781838 100644
--- a/libclamav/bytecode_api.c
+++ b/libclamav/bytecode_api.c
@@ -151,15 +151,15 @@ uint32_t cli_bcapi_trace_source(struct cli_bc_ctx *ctx, const const uint8_t *fil
     if (LIKELY(!ctx->trace_mask))
 	return 0;
     if (ctx->trace_mask&BC_TRACE_TMP_FUNC) {
-	cli_dbgmsg("[trace] %s:%u:%u -> %s:%u\t Entering function %s\n",
+	cli_dbgmsg("[trace] Entering function %s (%s:%u:%u -> %s:%u)\n",
+		   ctx->scope,
 		   ctx->file ? ctx->file : "??", ctx->lastline,
-		   ctx->lastcol, file ? file : "??", line,
-		   ctx->scope);
+		   ctx->lastcol, file ? file : "??", line);
 	ctx->file = file;
 	ctx->lastline = line;
 	cli_bytecode_debug_printsrc(ctx);
     } else if (ctx->trace_mask&BC_TRACE_TMP_SCOPE) {
-	cli_dbgmsg("[trace] %s:%u:%u -> %s:%u\t entering scope\n",
+	cli_dbgmsg("[trace] Entering scope (%s:%u:%u -> %s:%u)\n",
 		   ctx->file ? ctx->file : "??", ctx->lastline,
 		   ctx->lastcol, file ? file : "??", line,
 		   ctx->scope);
@@ -189,14 +189,15 @@ uint32_t cli_bcapi_trace_op(struct cli_bc_ctx *ctx, const const uint8_t *op, uin
     }
     if ((ctx->trace_mask&BC_TRACE_OP) && op) {
 	if (ctx->trace_mask&BC_TRACE_TMP_SRC) {
-	    cli_dbgmsg("[trace] %s:%u:%u\t %s\n",
-		       ctx->file ? ctx->file : "??", ctx->lastline, col,
-		       op);
+	    cli_dbgmsg("[trace] %s (@%s:%u:%u)\n",
+		       op,
+		       ctx->file ? ctx->file : "??", ctx->lastline, col);
 	    cli_bytecode_debug_printsrc(ctx);
 	    ctx->trace_mask &= ~BC_TRACE_TMP_SRC;
 	} else
 	    cli_dbgmsg("[trace] %s\n", op);
     }
+    ctx->trace_mask |= BC_TRACE_TMP_OP;
     return 0;
 }
 
@@ -204,15 +205,21 @@ uint32_t cli_bcapi_trace_value(struct cli_bc_ctx *ctx, const const uint8_t* name
 {
     if (LIKELY(!ctx->trace_mask))
 	return 0;
+    if ((ctx->trace_mask&BC_TRACE_PARAM) && !(ctx->trace_mask&BC_TRACE_TMP_OP)) {
+	if (name)
+	    cli_dbgmsg("[trace] param %s = %u\n", name, value);
+	ctx->trace_mask &= ~BC_TRACE_TMP_OP;
+	return 0;
+    }
     if ((ctx->trace_mask&BC_TRACE_VAL) && name) {
 	if (ctx->trace_mask&BC_TRACE_TMP_SRC) {
-	    cli_dbgmsg("[trace] %s:%u:%u\t %s = %u\n",
+	    cli_dbgmsg("[trace] %s = %u (@%s:%u:%u)\n",
+		       name, value,
 		       ctx->file ? ctx->file : "??",
-		       ctx->lastline, ctx->lastcol,
-		       name, value);
+		       ctx->lastline, ctx->lastcol);
 	    cli_bytecode_debug_printsrc(ctx);
 	} else {
-	    cli_dbgmsg("[trace]\t %s = %u\n", name, value);
+	    cli_dbgmsg("[trace] %s = %u\n", name, value);
 	}
     } else if (ctx->trace_mask&BC_TRACE_TMP_SRC) {
 	cli_dbgmsg("[trace] %s:%u:%u\n",
@@ -220,7 +227,7 @@ uint32_t cli_bcapi_trace_value(struct cli_bc_ctx *ctx, const const uint8_t* name
 		   ctx->lastline, ctx->lastcol);
 	cli_bytecode_debug_printsrc(ctx);
     }
-    ctx->trace_mask &= ~BC_TRACE_TMP_SRC;
+    ctx->trace_mask &= ~(BC_TRACE_TMP_SRC|BC_TRACE_TMP_OP);
     return 0;
 }
 
diff --git a/libclamav/bytecode_priv.h b/libclamav/bytecode_priv.h
index 19d9ef4..20ce64b 100644
--- a/libclamav/bytecode_priv.h
+++ b/libclamav/bytecode_priv.h
@@ -104,16 +104,18 @@ struct cli_bc_dbgnode {
 
 #define MAX_OP ~0u
 #define BC_TRACE_FUNC  0x1
-#define BC_TRACE_SCOPE 0x2
-#define BC_TRACE_LINE  0x4
-#define BC_TRACE_COL   0x8
-#define BC_TRACE_OP    0x10
-#define BC_TRACE_VAL   0x20
-#define BC_TRACE_TMP_FUNC  0x40
-#define BC_TRACE_TMP_SCOPE 0x80
-#define BC_TRACE_TMP_SRC  0x100
-#define BC_TRACE_SHOW_SOURCE 0x200
-#define BC_TRACE_ALL (BC_TRACE_FUNC | BC_TRACE_SCOPE | BC_TRACE_LINE | BC_TRACE_COL | BC_TRACE_OP | BC_TRACE_VAL | BC_TRACE_SHOW_SOURCE)
+#define BC_TRACE_PARAM 0x2
+#define BC_TRACE_SCOPE 0x4
+#define BC_TRACE_LINE  0x8
+#define BC_TRACE_COL   0x10
+#define BC_TRACE_OP    0x20
+#define BC_TRACE_VAL   0x40
+#define BC_TRACE_SHOW_SOURCE 0x80
+#define BC_TRACE_TMP_FUNC  0x100
+#define BC_TRACE_TMP_SCOPE 0x200
+#define BC_TRACE_TMP_SRC   0x400
+#define BC_TRACE_TMP_OP    0x800
+#define BC_TRACE_ALL (BC_TRACE_FUNC | BC_TRACE_PARAM | BC_TRACE_SCOPE | BC_TRACE_LINE | BC_TRACE_COL | BC_TRACE_OP | BC_TRACE_VAL | BC_TRACE_SHOW_SOURCE)
 
 struct cli_bc_ctx {
     /* id and params of toplevel function called */
diff --git a/libclamav/c++/bytecode2llvm.cpp b/libclamav/c++/bytecode2llvm.cpp
index 6c4c13d..2d90a79 100644
--- a/libclamav/c++/bytecode2llvm.cpp
+++ b/libclamav/c++/bytecode2llvm.cpp
@@ -270,6 +270,7 @@ private:
 	    // Global
 	    if (!operand)
 		return ConstantPointerNull::get(PointerType::getUnqual(Type::getInt8Ty(Context)));
+	    assert(globals[operand]);
 	    if (GlobalVariable *GV = dyn_cast<GlobalVariable>(globals[operand])) {
 		if (ConstantExpr *CE = dyn_cast<ConstantExpr>(GV->getInitializer())) {
 		    return CE;

-- 
Debian repository for ClamAV



More information about the Pkg-clamav-commits mailing list