aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2014-02-26 02:16:27 -0800
committerGuy Harris <guy@alum.mit.edu>2014-02-26 10:17:22 +0000
commitea1d5c151e0ef5620ca0421ed6d3154afb97ba50 (patch)
tree3e4e4fc96f86d1fde39627070401045248871d7f /epan/dissectors
parent85885f4509af563565e316982db98063e3565ad7 (diff)
Use proto_tree_add_item() for most string encodings.
We support ISO 8859-1 and 8859-8, so use proto_tree_add_item() for them. That leaves only EUC-KR. Change-Id: Ie61f69af43be03e5abeb84b95601a407900fb79b Reviewed-on: https://code.wireshark.org/review/403 Reviewed-by: Guy Harris <guy@alum.mit.edu>
Diffstat (limited to 'epan/dissectors')
-rw-r--r--epan/dissectors/packet-ansi_637.c30
1 files changed, 15 insertions, 15 deletions
diff --git a/epan/dissectors/packet-ansi_637.c b/epan/dissectors/packet-ansi_637.c
index c9269ca1e8..c43a405164 100644
--- a/epan/dissectors/packet-ansi_637.c
+++ b/epan/dissectors/packet-ansi_637.c
@@ -522,40 +522,40 @@ text_decoder(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, guint32 offset
offset, ia5_637_bigbuf);
break;
- case 0x09: /* GSM 7-bit default alphabet */
+ case 0x04: /* UNICODE */
offset = 0;
- bit = fill_bits;
- proto_tree_add_ts_23_038_7bits_item(tree, hf_ansi_637_tele_user_data_text, tvb_out, (offset << 3) + bit, num_fields);
+ proto_tree_add_item(tree, hf_ansi_637_tele_user_data_text, tvb_out, offset, num_fields*2, ENC_UCS_2|ENC_BIG_ENDIAN);
break;
- case 0x04: /* UNICODE */
+ case 0x07: /* Latin/Hebrew */
offset = 0;
- proto_tree_add_item(tree, hf_ansi_637_tele_user_data_text, tvb_out, offset, num_fields*2, ENC_UCS_2|ENC_BIG_ENDIAN);
+ proto_tree_add_item(tree, hf_ansi_637_tele_user_data_text, tvb_out, offset, num_fields, ENC_ISO_8859_8|ENC_NA);
break;
- case 0x10: /* KSC5601 (Korean) */
-
- if (str == NULL) str = "EUC-KR";
+ case 0x08: /* Latin */
- /* FALLTHROUGH */
+ offset = 0;
- case 0x07: /* Latin/Hebrew */
+ proto_tree_add_item(tree, hf_ansi_637_tele_user_data_text, tvb_out, offset, num_fields, ENC_ISO_8859_1|ENC_NA);
+ break;
- if (str == NULL) str = "iso-8859-8";
+ case 0x09: /* GSM 7-bit default alphabet */
- /* FALLTHROUGH */
+ offset = 0;
+ bit = fill_bits;
- case 0x08: /* Latin */
+ proto_tree_add_ts_23_038_7bits_item(tree, hf_ansi_637_tele_user_data_text, tvb_out, (offset << 3) + bit, num_fields);
+ break;
- if (str == NULL) str = "iso-8859-1";
+ case 0x10: /* KSC5601 (Korean) */
offset = 0;
- if ((cd = g_iconv_open("UTF-8", str)) != (GIConv) -1)
+ if ((cd = g_iconv_open("UTF-8", "EUC-KR")) != (GIConv) -1)
{
ustr = g_convert_with_iconv(tvb_get_ptr(tvb_out, offset, required_octs), required_octs , cd , NULL , NULL , &l_conv_error);
if (!l_conv_error)