From 06ade1b80bf1835b4f83bedd5d2c3c85d6d870ac Mon Sep 17 00:00:00 2001 From: "Eric S. Raymond" Date: Wed, 18 Mar 2015 21:19:00 -0400 Subject: Minor efficiency improvement. --- driver_zodiac.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'driver_zodiac.c') diff --git a/driver_zodiac.c b/driver_zodiac.c index d3fe0b7e..76f8d3f8 100644 --- a/driver_zodiac.c +++ b/driver_zodiac.c @@ -353,9 +353,15 @@ static gps_mask_t zodiac_analyze(struct gps_device_t *session) unsigned int id = (unsigned int)((session->lexer.outbuffer[3] << 8) | session->lexer.outbuffer[2]); - gpsd_log(&session->context->errout, LOG_RAW, - "Raw Zodiac packet type %d length %zd: %s\n", - id, session->lexer.outbuflen, gpsd_prettydump(session)); + /* + * The guard looks superfluous, but it keeps the rather expensive + * gpsd_packetdump() function from being called even when the debug + * level does not actually require it. + */ + if (session->context->errout.debug >= LOG_RAW) + gpsd_log(&session->context->errout, LOG_RAW, + "Raw Zodiac packet type %d length %zd: %s\n", + id, session->lexer.outbuflen, gpsd_prettydump(session)); if (session->lexer.outbuflen < 10) return 0; -- cgit v1.2.1