comparison src/util.c @ 1829:bdfb37ae28b4

[gaim-migrate @ 1839] not that anything uses this committer: Tailor Script <tailor@pidgin.im>
author Eric Warmenhoven <eric@warmenhoven.org>
date Wed, 09 May 2001 09:56:18 +0000
parents 7f889cdfa03e
children 4dbd8533d209
comparison
equal deleted inserted replaced
1828:643872269616 1829:bdfb37ae28b4
589 unsigned int tmp = 0; 589 unsigned int tmp = 0;
590 int len = 0, n = 0; 590 int len = 0, n = 0;
591 591
592 c = text; 592 c = text;
593 593
594 while (c) { 594 while (*c) {
595 tmp = tmp << 8; 595 tmp = tmp << 8;
596 tmp += *c; 596 tmp += *c;
597 n++; 597 n++;
598 598
599 if (n == 3) { 599 if (n == 3) {
609 c++; 609 c++;
610 } 610 }
611 switch (n) { 611 switch (n) {
612 612
613 case 2: 613 case 2:
614 tmp <<= 8;
614 out = g_realloc(out, len + 5); 615 out = g_realloc(out, len + 5);
615 out[len] = alphabet[(tmp >> 12) & 0x3f]; 616 out[len] = alphabet[(tmp >> 18) & 0x3f];
616 out[len + 1] = alphabet[(tmp >> 6) & 0x3f]; 617 out[len + 1] = alphabet[(tmp >> 12) & 0x3f];
617 out[len + 2] = alphabet[tmp & 0x3f]; 618 out[len + 2] = alphabet[(tmp >> 6) & 0x3f];
618 out[len + 3] = '='; 619 out[len + 3] = '=';
619 out[len + 4] = 0; 620 out[len + 4] = 0;
620 break; 621 break;
621 case 1: 622 case 1:
623 tmp <<= 16;
622 out = g_realloc(out, len + 4); 624 out = g_realloc(out, len + 4);
623 out[len] = alphabet[(tmp >> 6) & 0x3f]; 625 out[len] = alphabet[(tmp >> 12) & 0x3f];
624 out[len + 1] = alphabet[tmp & 0x3f]; 626 out[len + 1] = alphabet[(tmp >> 6) & 0x3f];
625 out[len + 2] = '='; 627 out[len + 2] = '=';
626 out[len + 3] = 0; 628 out[len + 3] = 0;
627 break; 629 break;
628 case 0: 630 case 0:
629 out = g_realloc(out, len + 2); 631 out = g_realloc(out, len + 2);