summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Gordon <rockbox@jdgordon.info>2009-09-07 07:51:58 +0000
committerJonathan Gordon <rockbox@jdgordon.info>2009-09-07 07:51:58 +0000
commit8bf50ecf481df8b68abfa2d71dde4fe172dbf7c5 (patch)
tree265b0d708f7c7eb853ca9ca812eb67b07679828b
parentfe2f042670a59cf73c3775945df9185d933ca9b4 (diff)
downloadrockbox-8bf50ecf481df8b68abfa2d71dde4fe172dbf7c5.tar.gz
rockbox-8bf50ecf481df8b68abfa2d71dde4fe172dbf7c5.zip
add a bit more debug info for skins... show the subimage id in the display image token's debug line
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22647 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--apps/gui/skin_engine/skin_parser.c2
-rw-r--r--apps/gui/skin_engine/wps_debug.c22
2 files changed, 16 insertions, 8 deletions
diff --git a/apps/gui/skin_engine/skin_parser.c b/apps/gui/skin_engine/skin_parser.c
index e2f7f5363c..a6d595db53 100644
--- a/apps/gui/skin_engine/skin_parser.c
+++ b/apps/gui/skin_engine/skin_parser.c
@@ -538,7 +538,7 @@ static int parse_image_display(const char *wps_bufptr,
538 img = find_image(label, wps_data); 538 img = find_image(label, wps_data);
539 if (!img) 539 if (!img)
540 { 540 {
541 token->value.i = label; /* do debug works */ 541 token->value.i = label; /* so debug works */
542 return WPS_ERROR_INVALID_PARAM; 542 return WPS_ERROR_INVALID_PARAM;
543 } 543 }
544 544
diff --git a/apps/gui/skin_engine/wps_debug.c b/apps/gui/skin_engine/wps_debug.c
index db8aa7759e..64a68b05d6 100644
--- a/apps/gui/skin_engine/wps_debug.c
+++ b/apps/gui/skin_engine/wps_debug.c
@@ -45,7 +45,8 @@ static char *next_str(bool next) {
45 return next ? "next " : ""; 45 return next ? "next " : "";
46} 46}
47 47
48static char *get_token_desc(struct wps_token *token, char *buf, int bufsize) 48static char *get_token_desc(struct wps_token *token, char *buf,
49 int bufsize, struct wps_data *data)
49{ 50{
50 bool next = token->next; 51 bool next = token->next;
51 52
@@ -116,8 +117,15 @@ static char *get_token_desc(struct wps_token *token, char *buf, int bufsize)
116 break; 117 break;
117 118
118 case WPS_TOKEN_IMAGE_PRELOAD_DISPLAY: 119 case WPS_TOKEN_IMAGE_PRELOAD_DISPLAY:
119 snprintf(buf, bufsize, "display preloaded image '%c'", 120 {
120 token->value.i&0xFF); 121 char subimage = '\0';
122 char label = token->value.i&0xFF;
123 struct gui_img *img = find_image(label, data);
124 if (img && img->num_subimages > 1)
125 subimage = 'a' + (token->value.i>>8);
126 snprintf(buf, bufsize, "display preloaded image '%c%c'",
127 label, subimage);
128 }
121 break; 129 break;
122 130
123 case WPS_TOKEN_IMAGE_DISPLAY: 131 case WPS_TOKEN_IMAGE_DISPLAY:
@@ -465,7 +473,7 @@ static void dump_wps_tokens(struct wps_data *data)
465 /* Dump parsed WPS */ 473 /* Dump parsed WPS */
466 for (i = 0, token = data->tokens; i < data->num_tokens; i++, token++) 474 for (i = 0, token = data->tokens; i < data->num_tokens; i++, token++)
467 { 475 {
468 get_token_desc(token, buf, sizeof(buf)); 476 get_token_desc(token, buf, sizeof(buf), data);
469 477
470 switch(token->type) 478 switch(token->type)
471 { 479 {
@@ -583,21 +591,21 @@ void print_debug_info(struct wps_data *data, enum wps_parse_error fail, int line
583 case PARSE_FAIL_INVALID_CHAR: 591 case PARSE_FAIL_INVALID_CHAR:
584 DEBUGF("ERR: Unexpected conditional char after token %d: \"%s\"", 592 DEBUGF("ERR: Unexpected conditional char after token %d: \"%s\"",
585 data->num_tokens-1, 593 data->num_tokens-1,
586 get_token_desc(&data->tokens[data->num_tokens-1], buf, sizeof(buf)) 594 get_token_desc(&data->tokens[data->num_tokens-1], buf, sizeof(buf), data)
587 ); 595 );
588 break; 596 break;
589 597
590 case PARSE_FAIL_COND_SYNTAX_ERROR: 598 case PARSE_FAIL_COND_SYNTAX_ERROR:
591 DEBUGF("ERR: Conditional syntax error after token %d: \"%s\"", 599 DEBUGF("ERR: Conditional syntax error after token %d: \"%s\"",
592 data->num_tokens-1, 600 data->num_tokens-1,
593 get_token_desc(&data->tokens[data->num_tokens-1], buf, sizeof(buf)) 601 get_token_desc(&data->tokens[data->num_tokens-1], buf, sizeof(buf), data)
594 ); 602 );
595 break; 603 break;
596 604
597 case PARSE_FAIL_COND_INVALID_PARAM: 605 case PARSE_FAIL_COND_INVALID_PARAM:
598 DEBUGF("ERR: Invalid parameter list for token %d: \"%s\"", 606 DEBUGF("ERR: Invalid parameter list for token %d: \"%s\"",
599 data->num_tokens, 607 data->num_tokens,
600 get_token_desc(&data->tokens[data->num_tokens], buf, sizeof(buf)) 608 get_token_desc(&data->tokens[data->num_tokens], buf, sizeof(buf), data)
601 ); 609 );
602 break; 610 break;
603 611