[prev in list] [next in list] [prev in thread] [next in thread]
List: rpm-cvs
Subject: [CVS] RPM: rpm/js/ rpmds-js.c rpmfi-js.c rpmhdr-js.c rpmjs-debug.h rpm...
From: "Jeff Johnson" <jbj () rpm5 ! org>
Date: 2009-04-26 16:11:33
Message-ID: 20090426161133.6597E4E29 () rpm5 ! org
[Download RAW message or body]
RPM Package Manager, CVS Repository
http://rpm5.org/cvs/
____________________________________________________________________________
Server: rpm5.org Name: Jeff Johnson
Root: /v/rpm/cvs Email: jbj@rpm5.org
Module: rpm Date: 26-Apr-2009 18:11:33
Branch: HEAD Handle: 2009042616113200
Added files:
rpm/js rpmjs-debug.h
Modified files:
rpm/js rpmds-js.c rpmfi-js.c rpmhdr-js.c rpmmi-js.c
rpmps-js.c rpmte-js.c rpmts-js.c tjs.c uuid-js.c
Log:
- js: compost the debugging spewage in a trash compactor.
Summary:
Revision Changes Path
1.7 +16 -56 rpm/js/rpmds-js.c
1.5 +10 -31 rpm/js/rpmfi-js.c
1.5 +46 -66 rpm/js/rpmhdr-js.c
1.1 +70 -0 rpm/js/rpmjs-debug.h
1.7 +20 -38 rpm/js/rpmmi-js.c
1.4 +10 -31 rpm/js/rpmps-js.c
1.4 +10 -31 rpm/js/rpmte-js.c
1.10 +10 -31 rpm/js/rpmts-js.c
1.13 +0 -1 rpm/js/tjs.c
1.6 +19 -38 rpm/js/uuid-js.c
____________________________________________________________________________
patch -p0 <<'@@ .'
Index: rpm/js/rpmds-js.c
============================================================================
$ cvs diff -u -r1.6 -r1.7 rpmds-js.c
--- rpm/js/rpmds-js.c 26 Apr 2009 03:56:35 -0000 1.6
+++ rpm/js/rpmds-js.c 26 Apr 2009 16:11:32 -0000 1.7
@@ -6,6 +6,7 @@
#include "rpmds-js.h"
#include "rpmhdr-js.h"
+#include "rpmjs-debug.h"
#include <argv.h>
#include <mire.h>
@@ -18,27 +19,13 @@
#include "debug.h"
/*@unchecked@*/
-extern int _rpmjs_debug;
-
-/*@unchecked@*/
static int _debug = 1;
-static const char * v2s(JSContext *cx, jsval v)
-{
- if (JSVAL_IS_NULL(v)) return "null";
- if (JSVAL_IS_VOID(v)) return "void";
- if (JSVAL_IS_INT(v)) return "integer";
- if (JSVAL_IS_DOUBLE(v)) return "double";
- if (JSVAL_IS_STRING(v)) return "string";
- if (JSVAL_IS_BOOLEAN(v)) return "boolean";
- if (JSVAL_IS_OBJECT(v)) {
- return OBJ_GET_CLASS(cx, JSVAL_TO_OBJECT(v))->name;
- }
- return "other";
-}
+/* --- helpers */
/* --- Object methods */
+#ifdef NOTYET
static JSBool
rpmds_next(JSContext *cx, uintN argc, jsval *vp)
{
@@ -73,6 +60,7 @@
exit:
return ok;
}
+#endif
static JSBool
rpmds_self(JSContext *cx, uintN argc, jsval *vp)
@@ -134,8 +122,7 @@
{
void * ptr = JS_GetInstancePrivate(cx, obj, &rpmdsClass, NULL);
-if (_debug < 0)
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%s],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, v2s(cx, id), vp, ptr, JS_GetStringBytes(JS_ValueToString(cx, \
id)), JS_GetStringBytes(JS_ValueToString(cx, *vp))); +_PROP_DEBUG_ENTRY(_debug < 0);
return JS_TRUE;
}
@@ -145,8 +132,7 @@
{
void * ptr = JS_GetInstancePrivate(cx, obj, &rpmdsClass, NULL);
-if (_debug < 0)
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%s],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, v2s(cx, id), vp, ptr, JS_GetStringBytes(JS_ValueToString(cx, \
id)), JS_GetStringBytes(JS_ValueToString(cx, *vp))); +_PROP_DEBUG_ENTRY(_debug < 0);
return JS_TRUE;
}
@@ -211,10 +197,7 @@
}
if (!ok) {
-if (_debug) {
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%s],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, v2s(cx, id), vp, ptr, JS_GetStringBytes(JS_ValueToString(cx, \
id)), JS_GetStringBytes(JS_ValueToString(cx, *vp)));
-ok = JS_TRUE; /* XXX return JS_TRUE iff ... ? */
-}
+_PROP_DEBUG_EXIT(_debug);
}
return ok;
@@ -262,10 +245,7 @@
}
if (!ok) {
-if (_debug) {
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%s],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, v2s(cx, id), vp, ptr, JS_GetStringBytes(JS_ValueToString(cx, \
id)), JS_GetStringBytes(JS_ValueToString(cx, *vp)));
-ok = JS_TRUE; /* XXX return JS_TRUE iff ... ? */
-}
+_PROP_DEBUG_EXIT(_debug);
}
return ok;
}
@@ -279,15 +259,7 @@
jsint ix;
JSBool ok = JS_FALSE;
-if (_debug < 0)
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%s],0x%x,%p) ptr %p property %s flags \
0x%x{%s,%s,%s,%s,%s}\n", __FUNCTION__, cx, obj, (unsigned long)id, v2s(cx, id), \
(unsigned)flags, objp, ptr,
- JS_GetStringBytes(JS_ValueToString(cx, id)), flags,
- (flags & JSRESOLVE_QUALIFIED) ? "qualified" : "",
- (flags & JSRESOLVE_ASSIGNING) ? "assigning" : "",
- (flags & JSRESOLVE_DETECTING) ? "detecting" : "",
- (flags & JSRESOLVE_DECLARING) ? "declaring" : "",
- (flags & JSRESOLVE_CLASSNAME) ? "classname" : "");
-
+_RESOLVE_DEBUG_ENTRY(_debug < 0);
if ((flags & JSRESOLVE_ASSIGNING)
|| (ds == NULL)) { /* don't resolve to parent prototypes objects. */
@@ -336,8 +308,7 @@
JSBool ok = JS_FALSE;
int ix;
-if (_debug < 0)
-fprintf(stderr, "==> %s(%p,%p,%d,%p,%p) *statep 0x%lx *idp 0x%lx\n", __FUNCTION__, \
cx, obj, op, statep, idp, (unsigned long)(statep ? *statep : 0xfeedface), (unsigned \
long)(idp ? *idp : 0xdeadbeef)); +_ENUMERATE_DEBUG_ENTRY(_debug < 0);
switch (op) {
case JSENUMERATE_INIT:
@@ -368,22 +339,20 @@
rpmds_convert(JSContext *cx, JSObject *obj, JSType type, jsval *vp)
{
void * ptr = JS_GetInstancePrivate(cx, obj, &rpmdsClass, NULL);
-if (_debug)
-fprintf(stderr, "==> %s(%p,%p,%d,%p) ptr %p convert to %s\n", __FUNCTION__, cx, \
obj, type, vp, ptr, JS_GetTypeName(cx, type)); +
+_CONVERT_DEBUG_ENTRY(_debug);
+
return JS_TRUE;
}
/* --- Object ctors/dtors */
-#define OBJ_IS_STRING(_cx, _o) (OBJ_GET_CLASS(_cx, _o) == &js_StringClass)
-#define OBJ_IS_HEADER(_cx, _o) (OBJ_GET_CLASS(_cx, _o) == &rpmhdrClass)
-
static rpmds
rpmds_init(JSContext *cx, JSObject *obj, JSObject *o, int _tagN)
{
rpmds ds = NULL;
int xx;
- if (OBJ_IS_HEADER(cx, o)) {
+ if (OBJ_IS_RPMHDR(cx, o)) {
Header h = JS_GetPrivate(cx, o);
int flags = 0;
if (_tagN == RPMTAG_NAME) {
@@ -422,7 +391,8 @@
xx = rpmdsUname(&ds, NULL);
if (_debug)
fprintf(stderr, "\trpmdsUname() ret %d ds %p\n", xx, ds);
- } else {
+ } else
+ {
if (_debug)
fprintf(stderr, "\tstring \"%s\" is unknown. ds %p\n", s, ds);
return NULL;
@@ -516,15 +486,6 @@
}
/* --- Class initialization */
-#ifdef HACKERY
-JSClass rpmdsClass = {
- "Ds", JSCLASS_NEW_RESOLVE | JSCLASS_NEW_ENUMERATE | JSCLASS_HAS_PRIVATE | \
JSCLASS_HAS_CACHED_PROTO(JSProto_Object),
- rpmds_addprop, rpmds_delprop, rpmds_getprop, rpmds_setprop,
- (JSEnumerateOp)rpmds_enumerate, (JSResolveOp)rpmds_resolve,
- rpmds_convert, rpmds_dtor,
- JSCLASS_NO_OPTIONAL_MEMBERS
-};
-#else
JSClass rpmdsClass = {
"Ds", JSCLASS_NEW_RESOLVE | JSCLASS_NEW_ENUMERATE | JSCLASS_HAS_PRIVATE,
rpmds_addprop, rpmds_delprop, rpmds_getprop, rpmds_setprop,
@@ -532,7 +493,6 @@
rpmds_convert, rpmds_dtor,
JSCLASS_NO_OPTIONAL_MEMBERS
};
-#endif
JSObject *
rpmjs_InitDsClass(JSContext *cx, JSObject* obj)
@@ .
patch -p0 <<'@@ .'
Index: rpm/js/rpmfi-js.c
============================================================================
$ cvs diff -u -r1.4 -r1.5 rpmfi-js.c
--- rpm/js/rpmfi-js.c 25 Apr 2009 21:51:49 -0000 1.4
+++ rpm/js/rpmfi-js.c 26 Apr 2009 16:11:32 -0000 1.5
@@ -6,6 +6,7 @@
#include "rpmfi-js.h"
#include "rpmhdr-js.h"
+#include "rpmjs-debug.h"
#include <argv.h>
#include <mire.h>
@@ -17,11 +18,10 @@
#include "debug.h"
/*@unchecked@*/
-extern int _rpmjs_debug;
-
-/*@unchecked@*/
static int _debug = 1;
+/* --- helpers */
+
/* --- Object methods */
static JSFunctionSpec rpmfi_funcs[] = {
@@ -42,10 +42,7 @@
rpmfi_addprop(JSContext *cx, JSObject *obj, jsval id, jsval *vp)
{
void * ptr = JS_GetInstancePrivate(cx, obj, &rpmfiClass, NULL);
-
-if (_debug < 0)
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, (unsigned)JSVAL_TAG(id), vp, ptr, \
JS_GetStringBytes(JS_ValueToString(cx, id)), JS_GetStringBytes(JS_ValueToString(cx, \
*vp)));
-
+_PROP_DEBUG_ENTRY(_debug < 0);
return JS_TRUE;
}
@@ -53,10 +50,7 @@
rpmfi_delprop(JSContext *cx, JSObject *obj, jsval id, jsval *vp)
{
void * ptr = JS_GetInstancePrivate(cx, obj, &rpmfiClass, NULL);
-
-if (_debug)
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, (unsigned)JSVAL_TAG(id), vp, ptr, \
JS_GetStringBytes(JS_ValueToString(cx, id)), JS_GetStringBytes(JS_ValueToString(cx, \
*vp)));
-
+_PROP_DEBUG_ENTRY(_debug < 0);
return JS_TRUE;
}
static JSBool
@@ -78,10 +72,7 @@
}
if (!ok) {
-if (_debug) {
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, (unsigned)JSVAL_TAG(id), vp, ptr, \
JS_GetStringBytes(JS_ValueToString(cx, id)), JS_GetStringBytes(JS_ValueToString(cx, \
*vp)));
-ok = JS_TRUE; /* XXX return JS_TRUE iff ... ? */
-}
+_PROP_DEBUG_EXIT(_debug);
}
return ok;
}
@@ -106,10 +97,7 @@
}
if (!ok) {
-if (_debug) {
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, (unsigned)JSVAL_TAG(id), vp, ptr, \
JS_GetStringBytes(JS_ValueToString(cx, id)), JS_GetStringBytes(JS_ValueToString(cx, \
*vp)));
-ok = JS_TRUE; /* XXX return JS_TRUE iff ... ? */
-}
+_PROP_DEBUG_EXIT(_debug);
}
return ok;
}
@@ -126,14 +114,7 @@
char value[5];
JSBool ok = JS_FALSE;
-if (_debug)
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],0x%x,%p) ptr %p property %s flags \
0x%x{%s,%s,%s,%s,%s}\n", __FUNCTION__, cx, obj, (unsigned long)id, \
(unsigned)JSVAL_TAG(id), (unsigned)flags, objp, ptr,
- JS_GetStringBytes(JS_ValueToString(cx, id)), flags,
- (flags & JSRESOLVE_QUALIFIED) ? "qualified" : "",
- (flags & JSRESOLVE_ASSIGNING) ? "assigning" : "",
- (flags & JSRESOLVE_DETECTING) ? "detecting" : "",
- (flags & JSRESOLVE_DECLARING) ? "declaring" : "",
- (flags & JSRESOLVE_CLASSNAME) ? "classname" : "");
+_RESOLVE_DEBUG_ENTRY(_debug);
if (flags & JSRESOLVE_ASSIGNING) {
ok = JS_TRUE;
@@ -167,8 +148,7 @@
JSObject *iterator;
JSBool ok = JS_FALSE;
-if (_debug)
-fprintf(stderr, "==> %s(%p,%p,%d,%p,%p)\n", __FUNCTION__, cx, obj, op, statep, \
idp); +_ENUMERATE_DEBUG_ENTRY(_debug);
#ifdef DYING
switch (op) {
@@ -219,8 +199,7 @@
rpmfi_convert(JSContext *cx, JSObject *obj, JSType type, jsval *vp)
{
void * ptr = JS_GetInstancePrivate(cx, obj, &rpmfiClass, NULL);
-if (_debug)
-fprintf(stderr, "==> %s(%p,%p,%d,%p) ptr %p convert to %s\n", __FUNCTION__, cx, \
obj, type, vp, ptr, JS_GetTypeName(cx, type)); +_CONVERT_DEBUG_ENTRY(_debug);
return JS_TRUE;
}
@@ .
patch -p0 <<'@@ .'
Index: rpm/js/rpmhdr-js.c
============================================================================
$ cvs diff -u -r1.4 -r1.5 rpmhdr-js.c
--- rpm/js/rpmhdr-js.c 25 Apr 2009 21:51:49 -0000 1.4
+++ rpm/js/rpmhdr-js.c 26 Apr 2009 16:11:32 -0000 1.5
@@ -5,15 +5,14 @@
#include "system.h"
#include "rpmhdr-js.h"
+#include "rpmjs-debug.h"
#include "debug.h"
/*@unchecked@*/
-extern int _rpmjs_debug;
-
-/*@unchecked@*/
static int _debug = 1;
+/* --- helpers */
static JSObject *
rpmhdrLoadTag(JSContext *cx, JSObject *obj, Header h, const char * name, jsval \
*vp) {
@@ -142,10 +141,7 @@
rpmhdr_addprop(JSContext *cx, JSObject *obj, jsval id, jsval *vp)
{
void * ptr = JS_GetInstancePrivate(cx, obj, &rpmhdrClass, NULL);
-
-if (_debug)
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, (unsigned)JSVAL_TAG(id), vp, ptr, \
JS_GetStringBytes(JS_ValueToString(cx, id)), JS_GetStringBytes(JS_ValueToString(cx, \
*vp)));
-
+_PROP_DEBUG_ENTRY(_debug < 0);
return JS_TRUE;
}
@@ -153,10 +149,7 @@
rpmhdr_delprop(JSContext *cx, JSObject *obj, jsval id, jsval *vp)
{
void * ptr = JS_GetInstancePrivate(cx, obj, &rpmhdrClass, NULL);
-
-if (_debug)
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, (unsigned)JSVAL_TAG(id), vp, ptr, \
JS_GetStringBytes(JS_ValueToString(cx, id)), JS_GetStringBytes(JS_ValueToString(cx, \
*vp)));
-
+_PROP_DEBUG_ENTRY(_debug < 0);
return JS_TRUE;
}
static JSBool
@@ -184,10 +177,7 @@
}
if (!ok) {
-if (_debug) {
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, (unsigned)JSVAL_TAG(id), vp, ptr, \
JS_GetStringBytes(JS_ValueToString(cx, id)), JS_GetStringBytes(JS_ValueToString(cx, \
*vp)));
-ok = JS_TRUE; /* XXX return JS_TRUE iff ... ? */
-}
+_PROP_DEBUG_EXIT(_debug);
}
return ok;
}
@@ -210,11 +200,45 @@
}
if (!ok) {
-if (_debug) {
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, (unsigned)JSVAL_TAG(id), vp, ptr, \
JS_GetStringBytes(JS_ValueToString(cx, id)), JS_GetStringBytes(JS_ValueToString(cx, \
*vp)));
-ok = JS_TRUE; /* XXX return JS_TRUE iff ... ? */
+_PROP_DEBUG_EXIT(_debug);
+ }
+ return ok;
}
+
+static JSBool
+rpmhdr_resolve(JSContext *cx, JSObject *obj, jsval id, uintN flags,
+ JSObject **objp)
+{
+ void * ptr = JS_GetInstancePrivate(cx, obj, &rpmhdrClass, NULL);
+ Header h = ptr;
+ JSString *idstr;
+ char * name;
+ JSObject * retobj = NULL;
+ JSBool ok = JS_FALSE;
+
+_RESOLVE_DEBUG_ENTRY(_debug);
+
+ if (flags & JSRESOLVE_ASSIGNING) {
+ ok = JS_TRUE;
+ goto exit;
}
+
+ if ((idstr = JS_ValueToString(cx, id)) == NULL)
+ goto exit;
+
+ name = JS_GetStringBytes(idstr);
+ if (!strcmp(name, "toString")
+ || !strcmp(name, "valueOf")
+ || !strcmp(name, "__iterator__")
+ || !strcmp(name, "toJSON"))
+ goto exit;
+
+ if ((retobj = rpmhdrLoadTag(cx, obj, h, name, NULL)) == NULL)
+ goto exit;
+ *objp = retobj;
+ ok = JS_TRUE;
+
+exit:
return ok;
}
@@ -222,11 +246,11 @@
rpmhdr_enumerate(JSContext *cx, JSObject *obj, JSIterateOp op,
jsval *statep, jsid *idp)
{
+ void * ptr = JS_GetInstancePrivate(cx, obj, &rpmhdrClass, NULL);
JSObject *iterator = NULL;
JSBool ok = JS_FALSE;
-if (_debug)
-fprintf(stderr, "==> %s(%p,%p,%d,%p,%p)\n", __FUNCTION__, cx, obj, op, statep, \
idp); +_ENUMERATE_DEBUG_ENTRY(_debug);
switch (op) {
case JSENUMERATE_INIT:
@@ -257,54 +281,10 @@
}
static JSBool
-rpmhdr_resolve(JSContext *cx, JSObject *obj, jsval id, uintN flags,
- JSObject **objp)
-{
- void * ptr = JS_GetInstancePrivate(cx, obj, &rpmhdrClass, NULL);
- Header h = ptr;
- JSString *idstr;
- char * name;
- JSObject * retobj = NULL;
- JSBool ok = JS_FALSE;
-
-if (_debug)
-fprintf(stderr, "==> %s(%p,%p,0x%llx,0x%x,%p) property %s flags \
0x%x{%s,%s,%s,%s,%s}\n", __FUNCTION__, cx, obj, (unsigned long long)id, \
(unsigned)flags, objp,
- JS_GetStringBytes(JS_ValueToString(cx, id)), flags,
- (flags & JSRESOLVE_QUALIFIED) ? "qualified" : "",
- (flags & JSRESOLVE_ASSIGNING) ? "assigning" : "",
- (flags & JSRESOLVE_DETECTING) ? "detecting" : "",
- (flags & JSRESOLVE_DECLARING) ? "declaring" : "",
- (flags & JSRESOLVE_CLASSNAME) ? "classname" : "");
-
- if (flags & JSRESOLVE_ASSIGNING) {
- ok = JS_TRUE;
- goto exit;
- }
-
- if ((idstr = JS_ValueToString(cx, id)) == NULL)
- goto exit;
-
- name = JS_GetStringBytes(idstr);
- if (!strcmp(name, "toString")
- || !strcmp(name, "valueOf")
- || !strcmp(name, "__iterator__")
- || !strcmp(name, "toJSON"))
- goto exit;
-
- if ((retobj = rpmhdrLoadTag(cx, obj, h, name, NULL)) == NULL)
- goto exit;
- *objp = retobj;
- ok = JS_TRUE;
-
-exit:
- return ok;
-}
-
-static JSBool
rpmhdr_convert(JSContext *cx, JSObject *obj, JSType type, jsval *vp)
{
-if (_debug)
-fprintf(stderr, "==> %s(%p,%p,%d,%p) convert to %s\n", __FUNCTION__, cx, obj, \
type, vp, JS_GetTypeName(cx, type)); + void * ptr = JS_GetInstancePrivate(cx, \
obj, &rpmhdrClass, NULL); +_CONVERT_DEBUG_ENTRY(_debug);
return JS_TRUE;
}
@@ .
patch -p0 <<'@@ .'
Index: rpm/js/rpmjs-debug.h
============================================================================
$ cvs diff -u -r0 -r1.1 rpmjs-debug.h
--- /dev/null 2009-04-26 18:11:00 +0200
+++ rpmjs-debug.h 2009-04-26 18:11:33 +0200
@@ -0,0 +1,70 @@
+#ifndef H_RPMJS_DEBUG
+#define H_RPMJS_DEBUG
+
+/**
+ * \file js/rpmjs-debug.h
+ */
+#include <rpm-js.h>
+
+#define OBJ_IS_STRING(_cx, _o) (OBJ_GET_CLASS(_cx, _o) == &js_StringClass)
+#define OBJ_IS_RPMHDR(_cx, _o) (OBJ_GET_CLASS(_cx, _o) == &rpmhdrClass)
+
+static const char * v2s(JSContext *cx, jsval v)
+{
+ if (JSVAL_IS_NULL(v)) return "null";
+ if (JSVAL_IS_VOID(v)) return "void";
+ if (JSVAL_IS_INT(v)) return "integer";
+ if (JSVAL_IS_DOUBLE(v)) return "double";
+ if (JSVAL_IS_STRING(v)) return "string";
+ if (JSVAL_IS_BOOLEAN(v)) return "boolean";
+ if (JSVAL_IS_OBJECT(v)) {
+ return OBJ_GET_CLASS(cx, JSVAL_TO_OBJECT(v))->name;
+ }
+ return "other";
+}
+
+#define _PROP_DEBUG_ENTRY(_test)\
+ if (_test) \
+ fprintf(stderr, "==> %s(%p,%p,0x%lx[%s],%p) ptr %p %s = %s\n", \
+ __FUNCTION__, cx, obj, (unsigned long)id, v2s(cx, id), vp, ptr, \
+ JS_GetStringBytes(JS_ValueToString(cx, id)), \
+ JS_GetStringBytes(JS_ValueToString(cx, *vp)))
+
+#define _PROP_DEBUG_EXIT(_test) \
+ if (_test) { \
+ fprintf(stderr, "==> %s(%p,%p,0x%lx[%s],%p) ptr %p %s = %s\n", \
+ __FUNCTION__, cx, obj, (unsigned long)id, v2s(cx, id), vp, ptr, \
+ JS_GetStringBytes(JS_ValueToString(cx, id)), \
+ JS_GetStringBytes(JS_ValueToString(cx, *vp))); \
+ ok = JS_TRUE; /* XXX return JS_TRUE iff ... ? */ \
+ }
+
+#define _RESOLVE_DEBUG_ENTRY(_test) \
+ if (_test) \
+ fprintf(stderr, "==> %s(%p,%p,0x%lx[%s],0x%x,%p) ptr %p property %s flags \
0x%x{%s,%s,%s,%s,%s}\n", \ + __FUNCTION__, cx, obj, (unsigned long)id, v2s(cx, \
id), \ + (unsigned)flags, objp, ptr, \
+ JS_GetStringBytes(JS_ValueToString(cx, id)), \
+ flags, \
+ (flags & JSRESOLVE_QUALIFIED) ? "qualified" : "", \
+ (flags & JSRESOLVE_ASSIGNING) ? "assigning" : "", \
+ (flags & JSRESOLVE_DETECTING) ? "detecting" : "", \
+ (flags & JSRESOLVE_DECLARING) ? "declaring" : "", \
+ (flags & JSRESOLVE_CLASSNAME) ? "classname" : "")
+
+#define _ENUMERATE_DEBUG_ENTRY(_test) \
+ if (_test) \
+ fprintf(stderr, "==> %s(%p,%p,%d,%p,%p) *statep 0x%lx *idp 0x%lx\n", \
+ __FUNCTION__, cx, obj, op, statep, idp, \
+ (unsigned long)(statep ? *statep : 0xfeedface), \
+ (unsigned long)(idp ? *idp : 0xdeadbeef))
+
+#define _CONVERT_DEBUG_ENTRY(_test) \
+ if (_test) \
+ fprintf(stderr, "==> %s(%p,%p,%d,%p) ptr %p convert to %s\n", \
+ __FUNCTION__, cx, obj, type, vp, ptr, JS_GetTypeName(cx, type))
+
+/*@unchecked@*/
+extern int _rpmjs_debug;
+
+#endif /* H_RPMJS_DEBUG */
@@ .
patch -p0 <<'@@ .'
Index: rpm/js/rpmmi-js.c
============================================================================
$ cvs diff -u -r1.6 -r1.7 rpmmi-js.c
--- rpm/js/rpmmi-js.c 26 Apr 2009 03:56:35 -0000 1.6
+++ rpm/js/rpmmi-js.c 26 Apr 2009 16:11:32 -0000 1.7
@@ -7,6 +7,7 @@
#include "rpmts-js.h"
#include "rpmmi-js.h"
#include "rpmhdr-js.h"
+#include "rpmjs-debug.h"
#include <rpmdb.h>
#include <rpmts.h>
@@ -14,11 +15,10 @@
#include "debug.h"
/*@unchecked@*/
-extern int _rpmjs_debug;
-
-/*@unchecked@*/
static int _debug = 1;
+/* --- helpers */
+
/* --- Object methods */
static JSBool
rpmmi_next(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval)
@@ -60,10 +60,7 @@
rpmmi_addprop(JSContext *cx, JSObject *obj, jsval id, jsval *vp)
{
void * ptr = JS_GetInstancePrivate(cx, obj, &rpmmiClass, NULL);
-
-if (_debug < 0)
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, (unsigned)JSVAL_TAG(id), vp, ptr, \
JS_GetStringBytes(JS_ValueToString(cx, id)), JS_GetStringBytes(JS_ValueToString(cx, \
*vp)));
-
+_PROP_DEBUG_ENTRY(_debug < 0);
return JS_TRUE;
}
@@ -71,10 +68,7 @@
rpmmi_delprop(JSContext *cx, JSObject *obj, jsval id, jsval *vp)
{
void * ptr = JS_GetInstancePrivate(cx, obj, &rpmmiClass, NULL);
-
-if (_debug < 0)
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, (unsigned)JSVAL_TAG(id), vp, ptr, \
JS_GetStringBytes(JS_ValueToString(cx, id)), JS_GetStringBytes(JS_ValueToString(cx, \
*vp)));
-
+_PROP_DEBUG_ENTRY(_debug < 0);
return JS_TRUE;
}
static JSBool
@@ -95,10 +89,7 @@
}
if (!ok) {
-if (_debug) {
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, (unsigned)JSVAL_TAG(id), vp, ptr, \
JS_GetStringBytes(JS_ValueToString(cx, id)), JS_GetStringBytes(JS_ValueToString(cx, \
*vp)));
-ok = JS_TRUE; /* XXX return JS_TRUE iff ... ? */
-}
+_PROP_DEBUG_EXIT(_debug);
}
return ok;
}
@@ -121,23 +112,29 @@
}
if (!ok) {
-if (_debug) {
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, (unsigned)JSVAL_TAG(id), vp, ptr, \
JS_GetStringBytes(JS_ValueToString(cx, id)), JS_GetStringBytes(JS_ValueToString(cx, \
*vp)));
-ok = JS_TRUE; /* XXX return JS_TRUE iff ... ? */
-}
+_PROP_DEBUG_EXIT(_debug);
}
return ok;
}
static JSBool
+rpmmi_resolve(JSContext *cx, JSObject *obj, jsval id, uintN flags,
+ JSObject **objp)
+{
+ void * ptr = JS_GetInstancePrivate(cx, obj, &rpmmiClass, NULL);
+_RESOLVE_DEBUG_ENTRY(_debug);
+ return JS_TRUE;
+}
+
+static JSBool
rpmmi_enumerate(JSContext *cx, JSObject *obj, JSIterateOp op,
jsval *statep, jsid *idp)
{
+ void * ptr = JS_GetInstancePrivate(cx, obj, &rpmmiClass, NULL);
JSObject *iterator = NULL;
JSBool ok = JS_FALSE;
-if (_debug)
-fprintf(stderr, "==> %s(%p,%p,%d,%p,%p)\n", __FUNCTION__, cx, obj, op, statep, \
idp); +_ENUMERATE_DEBUG_ENTRY(_debug);
switch (op) {
case JSENUMERATE_INIT:
@@ -168,25 +165,10 @@
}
static JSBool
-rpmmi_resolve(JSContext *cx, JSObject *obj, jsval id, uintN flags,
- JSObject **objp)
-{
-if (_debug)
-fprintf(stderr, "==> %s(%p,%p,0x%llx,0x%x,%p) property %s flags \
0x%x{%s,%s,%s,%s,%s}\n", __FUNCTION__, cx, obj, (unsigned long long)id, \
(unsigned)flags, objp,
- JS_GetStringBytes(JS_ValueToString(cx, id)), flags,
- (flags & JSRESOLVE_QUALIFIED) ? "qualified" : "",
- (flags & JSRESOLVE_ASSIGNING) ? "assigning" : "",
- (flags & JSRESOLVE_DETECTING) ? "detecting" : "",
- (flags & JSRESOLVE_DECLARING) ? "declaring" : "",
- (flags & JSRESOLVE_CLASSNAME) ? "classname" : "");
- return JS_TRUE;
-}
-
-static JSBool
rpmmi_convert(JSContext *cx, JSObject *obj, JSType type, jsval *vp)
{
-if (_debug)
-fprintf(stderr, "==> %s(%p,%p,%d,%p) convert to %s\n", __FUNCTION__, cx, obj, \
type, vp, JS_GetTypeName(cx, type)); + void * ptr = JS_GetInstancePrivate(cx, \
obj, &rpmmiClass, NULL); +_CONVERT_DEBUG_ENTRY(_debug);
return JS_TRUE;
}
@@ .
patch -p0 <<'@@ .'
Index: rpm/js/rpmps-js.c
============================================================================
$ cvs diff -u -r1.3 -r1.4 rpmps-js.c
--- rpm/js/rpmps-js.c 25 Apr 2009 21:51:49 -0000 1.3
+++ rpm/js/rpmps-js.c 26 Apr 2009 16:11:32 -0000 1.4
@@ -5,6 +5,7 @@
#include "system.h"
#include "rpmps-js.h"
+#include "rpmjs-debug.h"
#define _RPMPS_INTERNAL
#include <rpmps.h>
@@ -12,11 +13,10 @@
#include "debug.h"
/*@unchecked@*/
-extern int _rpmjs_debug;
-
-/*@unchecked@*/
static int _debug = 1;
+/* --- helpers */
+
/* --- Object methods */
static JSFunctionSpec rpmps_funcs[] = {
@@ -37,10 +37,7 @@
rpmps_addprop(JSContext *cx, JSObject *obj, jsval id, jsval *vp)
{
void * ptr = JS_GetInstancePrivate(cx, obj, &rpmpsClass, NULL);
-
-if (_debug < 0)
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, (unsigned)JSVAL_TAG(id), vp, ptr, \
JS_GetStringBytes(JS_ValueToString(cx, id)), JS_GetStringBytes(JS_ValueToString(cx, \
*vp)));
-
+_PROP_DEBUG_ENTRY(_debug < 0);
return JS_TRUE;
}
@@ -48,10 +45,7 @@
rpmps_delprop(JSContext *cx, JSObject *obj, jsval id, jsval *vp)
{
void * ptr = JS_GetInstancePrivate(cx, obj, &rpmpsClass, NULL);
-
-if (_debug)
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, (unsigned)JSVAL_TAG(id), vp, ptr, \
JS_GetStringBytes(JS_ValueToString(cx, id)), JS_GetStringBytes(JS_ValueToString(cx, \
*vp)));
-
+_PROP_DEBUG_ENTRY(_debug < 0);
return JS_TRUE;
}
static JSBool
@@ -73,10 +67,7 @@
}
if (!ok) {
-if (_debug) {
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, (unsigned)JSVAL_TAG(id), vp, ptr, \
JS_GetStringBytes(JS_ValueToString(cx, id)), JS_GetStringBytes(JS_ValueToString(cx, \
*vp)));
-ok = JS_TRUE; /* XXX return JS_TRUE iff ... ? */
-}
+_PROP_DEBUG_EXIT(_debug);
}
return ok;
}
@@ -101,10 +92,7 @@
}
if (!ok) {
-if (_debug) {
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, (unsigned)JSVAL_TAG(id), vp, ptr, \
JS_GetStringBytes(JS_ValueToString(cx, id)), JS_GetStringBytes(JS_ValueToString(cx, \
*vp)));
-ok = JS_TRUE; /* XXX return JS_TRUE iff ... ? */
-}
+_PROP_DEBUG_EXIT(_debug);
}
return ok;
}
@@ -121,14 +109,7 @@
char value[5];
JSBool ok = JS_FALSE;
-if (_debug)
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],0x%x,%p) ptr %p property %s flags \
0x%x{%s,%s,%s,%s,%s}\n", __FUNCTION__, cx, obj, (unsigned long)id, \
(unsigned)JSVAL_TAG(id), (unsigned)flags, objp, ptr,
- JS_GetStringBytes(JS_ValueToString(cx, id)), flags,
- (flags & JSRESOLVE_QUALIFIED) ? "qualified" : "",
- (flags & JSRESOLVE_ASSIGNING) ? "assigning" : "",
- (flags & JSRESOLVE_DETECTING) ? "detecting" : "",
- (flags & JSRESOLVE_DECLARING) ? "declaring" : "",
- (flags & JSRESOLVE_CLASSNAME) ? "classname" : "");
+_RESOLVE_DEBUG_ENTRY(_debug);
if (flags & JSRESOLVE_ASSIGNING) {
ok = JS_TRUE;
@@ -162,8 +143,7 @@
JSObject *iterator;
JSBool ok = JS_FALSE;
-if (_debug)
-fprintf(stderr, "==> %s(%p,%p,%d,%p,%p)\n", __FUNCTION__, cx, obj, op, statep, \
idp); +_ENUMERATE_DEBUG_ENTRY(_debug);
#ifdef DYING
switch (op) {
@@ -214,8 +194,7 @@
rpmps_convert(JSContext *cx, JSObject *obj, JSType type, jsval *vp)
{
void * ptr = JS_GetInstancePrivate(cx, obj, &rpmpsClass, NULL);
-if (_debug)
-fprintf(stderr, "==> %s(%p,%p,%d,%p) ptr %p convert to %s\n", __FUNCTION__, cx, \
obj, type, vp, ptr, JS_GetTypeName(cx, type)); +_CONVERT_DEBUG_ENTRY(_debug);
return JS_TRUE;
}
@@ .
patch -p0 <<'@@ .'
Index: rpm/js/rpmte-js.c
============================================================================
$ cvs diff -u -r1.3 -r1.4 rpmte-js.c
--- rpm/js/rpmte-js.c 25 Apr 2009 21:51:49 -0000 1.3
+++ rpm/js/rpmte-js.c 26 Apr 2009 16:11:32 -0000 1.4
@@ -7,6 +7,7 @@
#include "rpmts-js.h"
#include "rpmte-js.h"
#include "rpmhdr-js.h"
+#include "rpmjs-debug.h"
#include <argv.h>
#include <mire.h>
@@ -21,11 +22,10 @@
#include "debug.h"
/*@unchecked@*/
-extern int _rpmjs_debug;
-
-/*@unchecked@*/
static int _debug = 1;
+/* --- helpers */
+
/* --- Object methods */
static JSFunctionSpec rpmte_funcs[] = {
@@ -46,10 +46,7 @@
rpmte_addprop(JSContext *cx, JSObject *obj, jsval id, jsval *vp)
{
void * ptr = JS_GetInstancePrivate(cx, obj, &rpmteClass, NULL);
-
-if (_debug < 0)
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, (unsigned)JSVAL_TAG(id), vp, ptr, \
JS_GetStringBytes(JS_ValueToString(cx, id)), JS_GetStringBytes(JS_ValueToString(cx, \
*vp)));
-
+_PROP_DEBUG_ENTRY(_debug < 0);
return JS_TRUE;
}
@@ -57,10 +54,7 @@
rpmte_delprop(JSContext *cx, JSObject *obj, jsval id, jsval *vp)
{
void * ptr = JS_GetInstancePrivate(cx, obj, &rpmteClass, NULL);
-
-if (_debug)
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, (unsigned)JSVAL_TAG(id), vp, ptr, \
JS_GetStringBytes(JS_ValueToString(cx, id)), JS_GetStringBytes(JS_ValueToString(cx, \
*vp)));
-
+_PROP_DEBUG_ENTRY(_debug < 0);
return JS_TRUE;
}
static JSBool
@@ -82,10 +76,7 @@
}
if (!ok) {
-if (_debug) {
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, (unsigned)JSVAL_TAG(id), vp, ptr, \
JS_GetStringBytes(JS_ValueToString(cx, id)), JS_GetStringBytes(JS_ValueToString(cx, \
*vp)));
-ok = JS_TRUE; /* XXX return JS_TRUE iff ... ? */
-}
+_PROP_DEBUG_EXIT(_debug);
}
return ok;
}
@@ -110,10 +101,7 @@
}
if (!ok) {
-if (_debug) {
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, (unsigned)JSVAL_TAG(id), vp, ptr, \
JS_GetStringBytes(JS_ValueToString(cx, id)), JS_GetStringBytes(JS_ValueToString(cx, \
*vp)));
-ok = JS_TRUE; /* XXX return JS_TRUE iff ... ? */
-}
+_PROP_DEBUG_EXIT(_debug);
}
return ok;
}
@@ -130,14 +118,7 @@
char value[5];
JSBool ok = JS_FALSE;
-if (_debug)
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],0x%x,%p) ptr %p property %s flags \
0x%x{%s,%s,%s,%s,%s}\n", __FUNCTION__, cx, obj, (unsigned long)id, \
(unsigned)JSVAL_TAG(id), (unsigned)flags, objp, ptr,
- JS_GetStringBytes(JS_ValueToString(cx, id)), flags,
- (flags & JSRESOLVE_QUALIFIED) ? "qualified" : "",
- (flags & JSRESOLVE_ASSIGNING) ? "assigning" : "",
- (flags & JSRESOLVE_DETECTING) ? "detecting" : "",
- (flags & JSRESOLVE_DECLARING) ? "declaring" : "",
- (flags & JSRESOLVE_CLASSNAME) ? "classname" : "");
+_RESOLVE_DEBUG_ENTRY(_debug);
if (flags & JSRESOLVE_ASSIGNING) {
ok = JS_TRUE;
@@ -171,8 +152,7 @@
JSObject *iterator;
JSBool ok = JS_FALSE;
-if (_debug)
-fprintf(stderr, "==> %s(%p,%p,%d,%p,%p)\n", __FUNCTION__, cx, obj, op, statep, \
idp); +_ENUMERATE_DEBUG_ENTRY(_debug);
#ifdef DYING
switch (op) {
@@ -223,8 +203,7 @@
rpmte_convert(JSContext *cx, JSObject *obj, JSType type, jsval *vp)
{
void * ptr = JS_GetInstancePrivate(cx, obj, &rpmteClass, NULL);
-if (_debug)
-fprintf(stderr, "==> %s(%p,%p,%d,%p) ptr %p convert to %s\n", __FUNCTION__, cx, \
obj, type, vp, ptr, JS_GetTypeName(cx, type)); +_CONVERT_DEBUG_ENTRY(_debug);
return JS_TRUE;
}
@@ .
patch -p0 <<'@@ .'
Index: rpm/js/rpmts-js.c
============================================================================
$ cvs diff -u -r1.9 -r1.10 rpmts-js.c
--- rpm/js/rpmts-js.c 25 Apr 2009 21:51:49 -0000 1.9
+++ rpm/js/rpmts-js.c 26 Apr 2009 16:11:32 -0000 1.10
@@ -5,6 +5,7 @@
#include "system.h"
#include "rpmts-js.h"
+#include "rpmjs-debug.h"
#include <argv.h>
#include <mire.h>
@@ -17,11 +18,10 @@
#include "debug.h"
/*@unchecked@*/
-extern int _rpmjs_debug;
-
-/*@unchecked@*/
static int _debug = 1;
+/* --- helpers */
+
static JSObject *
rpmtsLoadNVRA(JSContext *cx, JSObject *obj)
{
@@ -143,10 +143,7 @@
rpmts_addprop(JSContext *cx, JSObject *obj, jsval id, jsval *vp)
{
void * ptr = JS_GetInstancePrivate(cx, obj, &rpmtsClass, NULL);
-
-if (_debug < 0)
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, (unsigned)JSVAL_TAG(id), vp, ptr, \
JS_GetStringBytes(JS_ValueToString(cx, id)), JS_GetStringBytes(JS_ValueToString(cx, \
*vp)));
-
+_PROP_DEBUG_ENTRY(_debug < 0);
return JS_TRUE;
}
@@ -154,10 +151,7 @@
rpmts_delprop(JSContext *cx, JSObject *obj, jsval id, jsval *vp)
{
void * ptr = JS_GetInstancePrivate(cx, obj, &rpmtsClass, NULL);
-
-if (_debug)
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, (unsigned)JSVAL_TAG(id), vp, ptr, \
JS_GetStringBytes(JS_ValueToString(cx, id)), JS_GetStringBytes(JS_ValueToString(cx, \
*vp)));
-
+_PROP_DEBUG_ENTRY(_debug < 0);
return JS_TRUE;
}
static JSBool
@@ -251,10 +245,7 @@
}
if (!ok) {
-if (_debug) {
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, (unsigned)JSVAL_TAG(id), vp, ptr, \
JS_GetStringBytes(JS_ValueToString(cx, id)), JS_GetStringBytes(JS_ValueToString(cx, \
*vp)));
-ok = JS_TRUE; /* XXX return JS_TRUE iff ... ? */
-}
+_PROP_DEBUG_EXIT(_debug);
}
return ok;
}
@@ -347,10 +338,7 @@
}
if (!ok) {
-if (_debug) {
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, (unsigned)JSVAL_TAG(id), vp, ptr, \
JS_GetStringBytes(JS_ValueToString(cx, id)), JS_GetStringBytes(JS_ValueToString(cx, \
*vp)));
-ok = JS_TRUE; /* XXX return JS_TRUE iff ... ? */
-}
+_PROP_DEBUG_EXIT(_debug);
}
return ok;
}
@@ -367,14 +355,7 @@
char value[5];
JSBool ok = JS_FALSE;
-if (_debug)
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],0x%x,%p) ptr %p property %s flags \
0x%x{%s,%s,%s,%s,%s}\n", __FUNCTION__, cx, obj, (unsigned long)id, \
(unsigned)JSVAL_TAG(id), (unsigned)flags, objp, ptr,
- JS_GetStringBytes(JS_ValueToString(cx, id)), flags,
- (flags & JSRESOLVE_QUALIFIED) ? "qualified" : "",
- (flags & JSRESOLVE_ASSIGNING) ? "assigning" : "",
- (flags & JSRESOLVE_DETECTING) ? "detecting" : "",
- (flags & JSRESOLVE_DECLARING) ? "declaring" : "",
- (flags & JSRESOLVE_CLASSNAME) ? "classname" : "");
+_RESOLVE_DEBUG_ENTRY(_debug);
if (flags & JSRESOLVE_ASSIGNING) {
ok = JS_TRUE;
@@ -411,8 +392,7 @@
JSObject *iterator;
JSBool ok = JS_FALSE;
-if (_debug)
-fprintf(stderr, "==> %s(%p,%p,%d,%p,%p)\n", __FUNCTION__, cx, obj, op, statep, \
idp); +_ENUMERATE_DEBUG_ENTRY(_debug);
#ifdef DYING
switch (op) {
@@ -463,8 +443,7 @@
rpmts_convert(JSContext *cx, JSObject *obj, JSType type, jsval *vp)
{
void * ptr = JS_GetInstancePrivate(cx, obj, &rpmtsClass, NULL);
-if (_debug)
-fprintf(stderr, "==> %s(%p,%p,%d,%p) ptr %p convert to %s\n", __FUNCTION__, cx, \
obj, type, vp, ptr, JS_GetTypeName(cx, type)); +_CONVERT_DEBUG_ENTRY(_debug);
return JS_TRUE;
}
@@ .
patch -p0 <<'@@ .'
Index: rpm/js/tjs.c
============================================================================
$ cvs diff -u -r1.12 -r1.13 tjs.c
--- rpm/js/tjs.c 25 Apr 2009 21:51:49 -0000 1.12
+++ rpm/js/tjs.c 26 Apr 2009 16:11:32 -0000 1.13
@@ -6,7 +6,6 @@
#define _RPMJS_INTERNAL
#include <rpmjs.h>
-
#include "rpmds-js.h"
#include "rpmfi-js.h"
#include "rpmte-js.h"
@@ .
patch -p0 <<'@@ .'
Index: rpm/js/uuid-js.c
============================================================================
$ cvs diff -u -r1.5 -r1.6 uuid-js.c
--- rpm/js/uuid-js.c 25 Apr 2009 21:51:49 -0000 1.5
+++ rpm/js/uuid-js.c 26 Apr 2009 16:11:32 -0000 1.6
@@ -4,6 +4,8 @@
#include "system.h"
+#include "rpmjs-debug.h"
+
#if defined(WITH_UUID)
#include <uuid.h>
#include "uuid-js.h"
@@ -11,9 +13,6 @@
#include "debug.h"
/*@unchecked@*/
-extern int _rpmjs_debug;
-
-/*@unchecked@*/
static int _debug = 1;
typedef struct uuid_s {
@@ -144,10 +143,7 @@
uuid_addprop(JSContext *cx, JSObject *obj, jsval id, jsval *vp)
{
void * ptr = JS_GetInstancePrivate(cx, obj, &uuidClass, NULL);
-
-if (_debug)
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, (unsigned)JSVAL_TAG(id), vp, ptr, \
JS_GetStringBytes(JS_ValueToString(cx, id)), JS_GetStringBytes(JS_ValueToString(cx, \
*vp)));
-
+_PROP_DEBUG_ENTRY(_debug < 0);
return JS_TRUE;
}
@@ -155,10 +151,7 @@
uuid_delprop(JSContext *cx, JSObject *obj, jsval id, jsval *vp)
{
void * ptr = JS_GetInstancePrivate(cx, obj, &uuidClass, NULL);
-
-if (_debug)
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, (unsigned)JSVAL_TAG(id), vp, ptr, \
JS_GetStringBytes(JS_ValueToString(cx, id)), JS_GetStringBytes(JS_ValueToString(cx, \
*vp)));
-
+_PROP_DEBUG_ENTRY(_debug < 0);
return JS_TRUE;
}
@@ -192,10 +185,7 @@
}
exit:
if (!ok) {
-if (_debug) {
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, (unsigned)JSVAL_TAG(id), vp, ptr, \
JS_GetStringBytes(JS_ValueToString(cx, id)), JS_GetStringBytes(JS_ValueToString(cx, \
*vp)));
-ok = JS_TRUE; /* XXX return JS_TRUE iff ... ? */
-}
+_PROP_DEBUG_EXIT(_debug);
}
return ok;
}
@@ -217,23 +207,29 @@
}
if (!ok) {
-if (_debug) {
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],%p) ptr %p %s = %s\n", __FUNCTION__, cx, \
obj, (unsigned long)id, (unsigned)JSVAL_TAG(id), vp, ptr, \
JS_GetStringBytes(JS_ValueToString(cx, id)), JS_GetStringBytes(JS_ValueToString(cx, \
*vp)));
-ok = JS_TRUE; /* XXX return JS_TRUE iff ... ? */
-}
+_PROP_DEBUG_EXIT(_debug);
}
return ok;
}
static JSBool
+uuid_resolve(JSContext *cx, JSObject *obj, jsval id, uintN flags,
+ JSObject **objp)
+{
+ void * ptr = JS_GetInstancePrivate(cx, obj, &uuidClass, NULL);
+_RESOLVE_DEBUG_ENTRY(_debug);
+ return JS_TRUE;
+}
+
+static JSBool
uuid_enumerate(JSContext *cx, JSObject *obj, JSIterateOp op,
jsval *statep, jsid *idp)
{
+ void * ptr = JS_GetInstancePrivate(cx, obj, &uuidClass, NULL);
JSObject *iterator;
JSBool ok = JS_FALSE;
-if (_debug)
-fprintf(stderr, "==> %s(%p,%p,%d,%p,%p)\n", __FUNCTION__, cx, obj, op, statep, \
idp); +_ENUMERATE_DEBUG_ENTRY(_debug);
switch (op) {
case JSENUMERATE_INIT:
@@ -261,25 +257,10 @@
}
static JSBool
-uuid_resolve(JSContext *cx, JSObject *obj, jsval id, uintN flags,
- JSObject **objp)
-{
-if (_debug)
-fprintf(stderr, "==> %s(%p,%p,0x%lx[%u],0x%x,%p) property %s flags \
0x%x{%s,%s,%s,%s,%s}\n", __FUNCTION__, cx, obj, (unsigned long)id, \
(unsigned)JSVAL_TAG(id), (unsigned)flags, objp,
- JS_GetStringBytes(JS_ValueToString(cx, id)), flags,
- (flags & JSRESOLVE_QUALIFIED) ? "qualified" : "",
- (flags & JSRESOLVE_ASSIGNING) ? "assigning" : "",
- (flags & JSRESOLVE_DETECTING) ? "detecting" : "",
- (flags & JSRESOLVE_DECLARING) ? "declaring" : "",
- (flags & JSRESOLVE_CLASSNAME) ? "classname" : "");
- return JS_TRUE;
-}
-
-static JSBool
uuid_convert(JSContext *cx, JSObject *obj, JSType type, jsval *vp)
{
-if (_debug)
-fprintf(stderr, "==> %s(%p,%p,%d,%p) convert to %s\n", __FUNCTION__, cx, obj, \
type, vp, JS_GetTypeName(cx, type)); + void * ptr = JS_GetInstancePrivate(cx, \
obj, &uuidClass, NULL); +_CONVERT_DEBUG_ENTRY(_debug);
return JS_TRUE;
}
@@ .
______________________________________________________________________
RPM Package Manager http://rpm5.org
CVS Sources Repository rpm-cvs@rpm5.org
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic