All pastes #974792 Raw Edit

Someone

public text v1 · immutable
·published 2008-04-07 01:40 UTC
rendered paste body


I found the problem.

When pair->value = 320 enter to this code (libyahoo/libyahoo2.c) line 1622 (enterim 2.4.22 with the latest Roger's patch applied:

	case 302:
			/* This is always 318 before a group, 319 before the first s/n in a group, 320 before any ignored s/n.
			 * It is not sent for s/n's in a group after the first.
			 * All ignored s/n's are listed last, so when we see a 320 we clear the group and begin marking the
			 * s/n's as ignored.  It is always followed by an identical 300 key.
			 */
			if (pair->value && !strcmp(pair->value, "320")) {
				/* No longer in any group; this indicates the start of the ignore list. */
				l = NULL;
			}
			break;

how l = NULL, then the next iteration occurs the SEGFAULT

for (l = pkt->hash; l ; l = l->next) {

I don't know why don't break the loop.