From: <kt...@us...> - 2009-10-27 15:27:37
|
Revision: 3288 http://cutter.svn.sourceforge.net/cutter/?rev=3288&view=rev Author: ktou Date: 2009-10-27 15:27:29 +0000 (Tue, 27 Oct 2009) Log Message: ----------- * cutter/cut-utils.c: don't inspect all data for huge data. (>= 1024 bytes) Modified Paths: -------------- cutter/trunk/ChangeLog cutter/trunk/cutter/cut-utils.c Modified: cutter/trunk/ChangeLog =================================================================== --- cutter/trunk/ChangeLog 2009-10-27 14:35:10 UTC (rev 3287) +++ cutter/trunk/ChangeLog 2009-10-27 15:27:29 UTC (rev 3288) @@ -1,3 +1,8 @@ +2009-10-28 Kouhei Sutou <ko...@co...> + + * cutter/cut-utils.c: don't inspect all data for huge data. (>= + 1024 bytes) + 2009-10-27 Kouhei Sutou <ko...@co...> * gcutter/gcut-string-io-channel.c: check only requested Modified: cutter/trunk/cutter/cut-utils.c =================================================================== --- cutter/trunk/cutter/cut-utils.c 2009-10-27 14:35:10 UTC (rev 3287) +++ cutter/trunk/cutter/cut-utils.c 2009-10-27 15:27:29 UTC (rev 3288) @@ -113,6 +113,7 @@ const guchar *binary = memory; GString *buffer; size_t i, n_printable_characters; + size_t max_size = 1024; if (memory == NULL || size == 0) return g_strdup("(null)"); @@ -121,16 +122,17 @@ (size - 1) * strlen(" ") + strlen(": ") + size); + max_size = MIN(size, max_size); n_printable_characters = 0; - for (i = 0; i < size; i++) { + for (i = 0; i < max_size; i++) { g_string_append_printf(buffer, "0x%02x ", binary[i]); if (g_ascii_isprint(binary[i])) n_printable_characters++; } - if (n_printable_characters >= size * 0.3) { + if (n_printable_characters >= max_size * 0.3) { g_string_overwrite(buffer, buffer->len - 1, ": "); - for (i = 0; i < size; i++) { + for (i = 0; i < max_size; i++) { if (g_ascii_isprint(binary[i])) { g_string_append_c(buffer, binary[i]); } else { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |