Mercurial > pidgin
comparison libpurple/dnsquery.c @ 24081:b703102fa0a5
Fix this g_return_val_if_fail. It should have been returning TRUE or
FALSE and not -1. But I think it was also leaking. I made the log
message a little better, too.
author | Mark Doliner <mark@kingant.net> |
---|---|
date | Wed, 10 Sep 2008 21:59:09 +0000 |
parents | 005649461c77 |
children | 5395b18f9f08 |
comparison
equal
deleted
inserted
replaced
24080:005649461c77 | 24081:b703102fa0a5 |
---|---|
410 send_dns_request_to_child(PurpleDnsQueryData *query_data, | 410 send_dns_request_to_child(PurpleDnsQueryData *query_data, |
411 PurpleDnsQueryResolverProcess *resolver) | 411 PurpleDnsQueryResolverProcess *resolver) |
412 { | 412 { |
413 pid_t pid; | 413 pid_t pid; |
414 dns_params_t dns_params; | 414 dns_params_t dns_params; |
415 int rc; | 415 ssize_t rc; |
416 | 416 |
417 /* This waitpid might return the child's PID if it has recently | 417 /* This waitpid might return the child's PID if it has recently |
418 * exited, or it might return an error if it exited "long | 418 * exited, or it might return an error if it exited "long |
419 * enough" ago that it has already been reaped; in either | 419 * enough" ago that it has already been reaped; in either |
420 * instance, we can't use it. */ | 420 * instance, we can't use it. */ |
442 purple_debug_error("dns", "Unable to write to DNS child %d: %s\n", | 442 purple_debug_error("dns", "Unable to write to DNS child %d: %s\n", |
443 resolver->dns_pid, g_strerror(errno)); | 443 resolver->dns_pid, g_strerror(errno)); |
444 purple_dnsquery_resolver_destroy(resolver); | 444 purple_dnsquery_resolver_destroy(resolver); |
445 return FALSE; | 445 return FALSE; |
446 } | 446 } |
447 | 447 if (rc < sizeof(dns_params)) { |
448 g_return_val_if_fail(rc == sizeof(dns_params), -1); | 448 purple_debug_error("dns", "Tried to read %" G_GSSIZE_FORMAT |
449 " bytes from child but only read %" G_GSSIZE_FORMAT "\n", | |
450 sizeof(dns_params), rc); | |
451 purple_dnsquery_resolver_destroy(resolver); | |
452 return FALSE; | |
453 } | |
449 | 454 |
450 purple_debug_info("dns", | 455 purple_debug_info("dns", |
451 "Successfully sent DNS request to child %d\n", | 456 "Successfully sent DNS request to child %d\n", |
452 resolver->dns_pid); | 457 resolver->dns_pid); |
453 | 458 |