Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 81423 | Differences between
and this patch

Collapse All | Expand All

(-)libtranslate-0.99.orig/src/modules/translate-generic-service.c (-5 / +22 lines)
Lines 484-490 Link Here
484
484
485
  if (SOUP_STATUS_IS_SUCCESSFUL(message->status_code))
485
  if (SOUP_STATUS_IS_SUCCESSFUL(message->status_code))
486
    {
486
    {
487
      const char *charset = NULL;
487
      char *charset = NULL;
488
      
488
      
489
      if (flags & TRANSFER_CONVERT)
489
      if (flags & TRANSFER_CONVERT)
490
	{
490
	{
Lines 493-506 Link Here
493
	  content_type = translate_generic_service_get_header(message, &info, "Content-Type");
493
	  content_type = translate_generic_service_get_header(message, &info, "Content-Type");
494
	  if (content_type)
494
	  if (content_type)
495
	    {
495
	    {
496
	      charset = translate_ascii_strcasestr(content_type, "charset=");
496
	      const char *tmp;
497
	      if (charset)
497
	      
498
		charset += 8;
498
	      tmp = translate_ascii_strcasestr(content_type, "charset=");
499
	      if (tmp)
500
		{
501
		  int len;
502
503
		  tmp += 8;
504
		  if (*tmp == '\'' || *tmp == '"')
505
		    tmp++;
506
507
		  len = strlen(tmp);
508
		  if (len > 0 && (tmp[len - 1] == '\'' || tmp[len - 1] == '"'))
509
		    len--;
510
511
		  charset = g_strndup(tmp, len);
512
		}
499
	    }
513
	    }
500
	}
514
	}
501
515
502
      if (charset)
516
      if (charset)
503
	response = g_convert(message->response.body, message->response.length, "UTF-8", charset, NULL, NULL, err);
517
	{
518
	  response = g_convert(message->response.body, message->response.length, "UTF-8", charset, NULL, NULL, err);
519
	  g_free(charset);
520
	}
504
      else
521
      else
505
	{
522
	{
506
	  if ((flags & TRANSFER_CONVERT) && ! g_utf8_validate(message->response.body, message->response.length, NULL))
523
	  if ((flags & TRANSFER_CONVERT) && ! g_utf8_validate(message->response.body, message->response.length, NULL))

Return to bug 81423