- i += aim_putsnac(newpacket->data, 0x0002, 0x004, 0x0000, sess->snac_nextid);
- i += aim_puttlv_str(newpacket->data+i, 0x0001, strlen("text/aolrtf; charset=\"us-ascii\""), "text/x-aolrtf; charset=\"us-ascii\"");
- i += aim_puttlv_str(newpacket->data+i, 0x0002, strlen(profile), profile);
- /* why do we send this twice? */
- i += aim_puttlv_str(newpacket->data+i, 0x0003, strlen("text/aolrtf; charset=\"us-ascii\""), "text/x-aolrtf; charset=\"us-ascii\"");
-
- /* Away message -- we send this no matter what, even if its blank */
- if (awaymsg)
+ i = aim_putsnac(newpacket->data, 0x0002, 0x004, 0x0000, sess->snac_nextid);
+
+ if (profile) {
+ i += aim_puttlv_str(newpacket->data+i, 0x0001, strlen(defencoding), defencoding);
+ i += aim_puttlv_str(newpacket->data+i, 0x0002, strlen(profile), profile);
+ }
+
+ if (awaymsg) {
+ i += aim_puttlv_str(newpacket->data+i, 0x0003, strlen(defencoding), defencoding);