--- crash-7.0.1/tools.c.orig 2013-06-17 20:18:36.000000000 +0200 +++ crash-7.0.1/tools.c 2013-07-10 18:18:48.226348270 +0200 @@ -5389,7 +5389,7 @@ pc->flags |= PLEASE_WAIT; please_wait_len = sprintf(buf, "\rplease wait... (%s)", s); - fprintf(fp, buf); + fputs(buf, fp); fflush(fp); } --- crash-7.0.1/memory.c.orig 2013-06-17 20:18:36.000000000 +0200 +++ crash-7.0.1/memory.c 2013-07-10 19:36:54.826063658 +0200 @@ -3608,7 +3608,7 @@ if (!(flag & (PHYSADDR|VERIFY_ADDR|PRINT_VMA_STRUCTS|PRINT_SINGLE_VMA)) && !DO_REF_SEARCH(ref)) - fprintf(fp, vma_header); + fputs(vma_header, fp); for (found = FALSE; vma; vma = vm_next) { @@ -3868,7 +3868,7 @@ } if (display) - fprintf(fp, buf3); + fputs(buf3, fp); start += PAGESIZE(); } @@ -5725,7 +5725,7 @@ close_tmpfile(); if (found) { - fprintf(fp, hash_table); + fputs(hash_table, fp); fprintf(fp, "%lx\n", searchpage); hi->retval = TRUE; } @@ -5829,7 +5829,7 @@ open_tmpfile(); if (!verbose) - fprintf(fp, free_area_hdr1); + fputs(free_area_hdr1, fp); hq_open(); for (i = 0; i < nr_mem_lists; i++) { @@ -5838,7 +5838,7 @@ chunk_size = power(2, i); if (verbose) - fprintf(fp, free_area_hdr2); + fputs(free_area_hdr2, fp); fprintf(fp, "%3d ", i); sprintf(buf, "%ldk", (chunk_size * PAGESIZE())/1024); @@ -5924,8 +5924,8 @@ if (found) { order--; - fprintf(fp, last_free_hdr); - fprintf(fp, last_free); + fputs(last_free_hdr, fp); + fputs(last_free, fp); fprintf(fp, "%lx ", this_addr); if (order) { switch (fi->memtype) @@ -6039,12 +6039,12 @@ hq_open(); for (i = sum = found = 0; i < dimension; i++) { if (!verbose) - fprintf(fp, free_area_hdr5); + fputs(free_area_hdr5, fp); pp = (ulong *)(free_area_buf + ((SIZE(free_area_struct)*nr_mem_lists)*i)); for (j = 0; j < nr_mem_lists; j++) { if (verbose) - fprintf(fp, free_area_hdr6); + fputs(free_area_hdr6, fp); sprintf(buf, "[%d][%d]", i, j); fprintf(fp, "%7s ", buf); @@ -6137,7 +6137,7 @@ close_tmpfile(); if (found) { - fprintf(fp, last_area_hdr); + fputs(last_area_hdr, fp); fprintf(fp, "%s\n", last_area); fprintf(fp, "%lx ", this_addr); if (order) { @@ -6433,7 +6433,7 @@ zone_hdr, mkstring(buf1, VADDR_PRLEN, CENTER|LJUST, "MEM_MAP")); fprintf(fp, "%s\n", last_zone); - fprintf(fp, last_area_hdr); + fputs(last_area_hdr, fp); fprintf(fp, "%s\n", last_area); fprintf(fp, "%lx ", this_addr); if (order) { @@ -6758,7 +6758,7 @@ zone_hdr, mkstring(buf1, VADDR_PRLEN, CENTER|LJUST, "MEM_MAP")); fprintf(fp, "%s\n", last_zone); - fprintf(fp, last_area_hdr); + fputs(last_area_hdr, fp); fprintf(fp, "%s\n", last_area); fprintf(fp, "%lx ", this_addr); if (order) { @@ -6924,7 +6924,7 @@ ld = &list_data; if (!verbose) - fprintf(fp, free_area_hdr4); + fputs(free_area_hdr4, fp); total_free = 0; flen = MAX(VADDR_PRLEN, strlen("FREE_AREA_STRUCT")); @@ -6935,7 +6935,7 @@ for (i = 0; i < num; i++, free_area += SIZE_OPTION(free_area_struct, free_area)) { if (verbose) - fprintf(fp, free_area_hdr3); + fputs(free_area_hdr3, fp); fprintf(fp, "%3d ", i); chunk_size = power(2, i); sprintf(buf, "%ldk", (chunk_size * PAGESIZE())/1024); @@ -6999,7 +6999,7 @@ j++, free_list += SIZE(list_head)) { if (verbose) - fprintf(fp, free_area_hdr3); + fputs(free_area_hdr3, fp); fprintf(fp, "%3d ", i); chunk_size = power(2, i); @@ -7109,7 +7109,7 @@ } } - fprintf(fp, kmeminfo_hdr); + fputs(kmeminfo_hdr, fp); /* * Get total RAM based upon how the various versions of si_meminfo() * have done it, latest to earliest: @@ -8697,7 +8697,7 @@ if ((!(si->flags & VERBOSE) || si->reqname) && !(si->flags & (ADDRESS_SPECIFIED|GET_SLAB_PAGES))) - fprintf(fp, kmem_cache_hdr); + fputs(kmem_cache_hdr, fp); si->addrlist = (ulong *)GETBUF((vt->kmem_max_c_num+1) * sizeof(ulong)); cnt = 0; @@ -8804,9 +8804,9 @@ do_slab_chain(SLAB_WALKTHROUGH, si); if (si->found) { - fprintf(fp, kmem_cache_hdr); + fputs(kmem_cache_hdr, fp); DUMP_KMEM_CACHE_INFO_V1(); - fprintf(fp, slab_hdr); + fputs(slab_hdr, fp); DUMP_SLAB_INFO(); switch (si->found) @@ -8833,14 +8833,14 @@ break; case KMEM_OBJECT_ADDR_FREE: - fprintf(fp, free_inuse_hdr); + fputs(free_inuse_hdr, fp); fprintf(fp, " %lx\n", si->container ? si->container : (ulong)si->spec_addr); break; case KMEM_OBJECT_ADDR_INUSE: - fprintf(fp, free_inuse_hdr); + fputs(free_inuse_hdr, fp); fprintf(fp, " [%lx]\n", si->container ? si->container : (ulong)si->spec_addr); @@ -8903,7 +8903,7 @@ if ((!(si->flags & VERBOSE) || si->reqname) && !(si->flags & (ADDRESS_SPECIFIED|GET_SLAB_PAGES))) - fprintf(fp, kmem_cache_hdr); + fputs(kmem_cache_hdr, fp); si->addrlist = (ulong *)GETBUF((vt->kmem_max_c_num+1) * sizeof(ulong)); si->kmem_bufctl = (int *)GETBUF((vt->kmem_max_c_num+1) * sizeof(int)); @@ -9018,9 +9018,9 @@ do_slab_chain_percpu_v1(SLAB_WALKTHROUGH, si); if (si->found) { - fprintf(fp, kmem_cache_hdr); + fputs(kmem_cache_hdr, fp); DUMP_KMEM_CACHE_INFO_V1(); - fprintf(fp, slab_hdr); + fputs(slab_hdr, fp); gather_slab_cached_count(si); DUMP_SLAB_INFO(); @@ -9045,21 +9045,21 @@ break; case KMEM_OBJECT_ADDR_FREE: - fprintf(fp, free_inuse_hdr); + fputs(free_inuse_hdr, fp); fprintf(fp, " %lx\n", si->container ? si->container : (ulong)si->spec_addr); break; case KMEM_OBJECT_ADDR_INUSE: - fprintf(fp, free_inuse_hdr); + fputs(free_inuse_hdr, fp); fprintf(fp, " [%lx]\n", si->container ? si->container : (ulong)si->spec_addr); break; case KMEM_OBJECT_ADDR_CACHED: - fprintf(fp, free_inuse_hdr); + fputs(free_inuse_hdr, fp); fprintf(fp, " %lx (cpu %d cache)\n", si->container ? si->container : @@ -9123,7 +9123,7 @@ if ((!(si->flags & VERBOSE) || si->reqname) && !(si->flags & (ADDRESS_SPECIFIED|GET_SLAB_PAGES))) - fprintf(fp, kmem_cache_hdr); + fputs(kmem_cache_hdr, fp); si->addrlist = (ulong *)GETBUF((vt->kmem_max_c_num+1) * sizeof(ulong)); si->kmem_bufctl = (int *)GETBUF((vt->kmem_max_c_num+1) * sizeof(int)); @@ -9262,9 +9262,9 @@ do_slab_chain_percpu_v2(SLAB_WALKTHROUGH, si); if (si->found) { - fprintf(fp, kmem_cache_hdr); + fputs(kmem_cache_hdr, fp); DUMP_KMEM_CACHE_INFO_V2(); - fprintf(fp, slab_hdr); + fputs(slab_hdr, fp); gather_slab_cached_count(si); DUMP_SLAB_INFO(); @@ -9289,21 +9289,21 @@ break; case KMEM_OBJECT_ADDR_FREE: - fprintf(fp, free_inuse_hdr); + fputs(free_inuse_hdr, fp); fprintf(fp, " %lx\n", si->container ? si->container : (ulong)si->spec_addr); break; case KMEM_OBJECT_ADDR_INUSE: - fprintf(fp, free_inuse_hdr); + fputs(free_inuse_hdr, fp); fprintf(fp, " [%lx]\n", si->container ? si->container : (ulong)si->spec_addr); break; case KMEM_OBJECT_ADDR_CACHED: - fprintf(fp, free_inuse_hdr); + fputs(free_inuse_hdr, fp); fprintf(fp, " %lx (cpu %d cache)\n", si->container ? si->container : @@ -9311,7 +9311,7 @@ break; case KMEM_OBJECT_ADDR_SHARED: - fprintf(fp, free_inuse_hdr); + fputs(free_inuse_hdr, fp); fprintf(fp, " %lx (shared cache)\n", si->container ? si->container : @@ -10422,7 +10422,7 @@ si->s_index = ULONG_PTR(si->slab_buf + OFFSET(kmem_slab_s_s_index)); if (!(si->flags & ADDRESS_SPECIFIED)) { - fprintf(fp, slab_hdr); + fputs(slab_hdr, fp); DUMP_SLAB_INFO(); } @@ -10474,7 +10474,7 @@ gather_slab_cached_count(si); if (!(si->flags & ADDRESS_SPECIFIED)) { - fprintf(fp, slab_hdr); + fputs(slab_hdr, fp); DUMP_SLAB_INFO(); } @@ -10526,7 +10526,7 @@ gather_slab_cached_count(si); if (!(si->flags & ADDRESS_SPECIFIED)) { - fprintf(fp, slab_hdr); + fputs(slab_hdr, fp); DUMP_SLAB_INFO(); } @@ -10774,7 +10774,7 @@ } if (!(si->flags & ADDRESS_SPECIFIED)) - fprintf(fp, free_inuse_hdr); + fputs(free_inuse_hdr, fp); /* For on-slab bufctls, c_offset is the distance between the start of * an obj and its related bufctl. For off-slab bufctls, c_offset is @@ -10850,7 +10850,7 @@ } if (!(si->flags & ADDRESS_SPECIFIED)) - fprintf(fp, free_inuse_hdr); + fputs(free_inuse_hdr, fp); for (i = 0, obj = si->s_mem; i < si->c_num; i++, obj += si->size) { on_free_list = FALSE; @@ -13494,7 +13494,7 @@ swap_info = symbol_value("swap_info"); if (swapflags & VERBOSE) - fprintf(fp, swap_info_hdr); + fputs(swap_info_hdr, fp); totalswap = totalused = 0; @@ -15948,7 +15948,7 @@ if (!si->reqname && !(si->flags & (ADDRESS_SPECIFIED|GET_SLAB_PAGES))) - fprintf(fp, kmem_cache_hdr); + fputs(kmem_cache_hdr, fp); if (si->flags & ADDRESS_SPECIFIED) { if ((p1 = is_slab_page(si, kbuf))) { @@ -15983,7 +15983,7 @@ if (reqname) { if (!STREQ(reqname, buf)) continue; - fprintf(fp, kmem_cache_hdr); + fputs(kmem_cache_hdr, fp); } if (ignore_cache(si, buf)) { fprintf(fp, "%lx %-18s [IGNORED]\n", @@ -16027,7 +16027,7 @@ } else if (si->flags & VERBOSE) { do_kmem_cache_slub(si); if (!reqname && ((i+1) < si->cache_count)) - fprintf(fp, kmem_cache_hdr); + fputs(kmem_cache_hdr, fp); } next_cache: --- crash-7.0.1/x86_64.c.orig 2013-06-17 20:18:36.000000000 +0200 +++ crash-7.0.1/x86_64.c 2013-07-10 19:38:10.459391696 +0200 @@ -4679,7 +4679,7 @@ value_to_symstr(addr, locbuf, 0); if (strlen(locbuf)) - sprintf(buf, locbuf); + strcpy(buf, locbuf); else { sprintf(buf, "%016lx", addr); if (kvtop(NULL, addr, &phys, 0)) { @@ -4745,7 +4745,7 @@ sprintf(buf1, "0x%lx <%s>\n", value, value_to_symstr(value, buf2, output_radix)); - sprintf(p1, buf1); + strcpy(p1, buf1); } else if (STREQ(argv[argc-2], "callq") && hexadecimal(argv[argc-1], 0)) { @@ -4763,7 +4763,7 @@ value_to_symstr(value, buf2, output_radix)); if (IS_MODULE_VADDR(value) && !strstr(buf2, "+")) - sprintf(p1, buf1); + strcpy(p1, buf1); } } @@ -7256,7 +7256,7 @@ strcpy(buf2, buf); if (CRASHDEBUG(3)) - fprintf(fp, buf2); + fputs(buf2, fp); c = parse_line(buf, arglist); --- crash-7.0.1/va_server.c.orig 2013-06-17 20:18:36.000000000 +0200 +++ crash-7.0.1/va_server.c 2013-07-10 19:38:39.904020687 +0200 @@ -416,7 +416,7 @@ hdr = sizeof(long) == 4 ? memory_dump_hdr_32 : memory_dump_hdr_64; fmt = sizeof(long) == 4 ? memory_dump_fmt_32 : memory_dump_fmt_64; - fprintf(fp, hdr); + fputs(hdr, fp); for (blks = 0, m = vas_map_base->map; m->start_va; m++) { fprintf(fp, fmt, --- crash-7.0.1/symbols.c.orig 2013-06-17 20:18:36.000000000 +0200 +++ crash-7.0.1/symbols.c 2013-07-10 20:09:51.433565338 +0200 @@ -5691,7 +5691,7 @@ } } p1 = strstr(buf1, "="); - fprintf(pc->saved_fp, p1+2); + fputs(p1+2, pc->saved_fp); } else fprintf(pc->saved_fp, " %s", buf1); } @@ -6042,7 +6042,7 @@ if ((flags & SHOW_OFFSET) && whitespace(buf[0])) show_member_offset(sfp, dm, buf); else - fprintf(sfp, buf); + fputs(buf, sfp); } } } @@ -6295,7 +6295,7 @@ p1 = buf; if (STRNEQ(buf, "type = ")) p1 += strlen("type = "); - fprintf(pc->saved_fp, p1); + fputs(p1, pc->saved_fp); } close_tmpfile(); @@ -6453,7 +6453,7 @@ int firstline; if (leader) { - fprintf(pc->saved_fp, buf2); + fputs(buf2, pc->saved_fp); fflush(pc->saved_fp); } @@ -6464,7 +6464,7 @@ (p1 = strstr(buf1, "{")) && !STRNEQ(p1, "{\n")) { *p1 = NULLCHAR; - fprintf(pc->saved_fp, buf1); + fputs(buf1, pc->saved_fp); fprintf(pc->saved_fp, "\n {"); print_verbatim(pc->saved_fp, p1+1); } else @@ -7110,7 +7110,7 @@ sprintf(buf1, *gdb_output_radix == 10 ? " [%ld]" : " [0x%lx]", offset); sprintf(fmt, "%c%ds", '%', len); fprintf(ofp, fmt, buf1); - fprintf(ofp, &inbuf[3]); + fputs(&inbuf[3], ofp); return TRUE; @@ -9347,7 +9347,7 @@ strstr(buf, " offset_table:")) break; - fprintf(pc->saved_fp, buf); + fputs(buf, pc->saved_fp); } } close_tmpfile(); --- crash-7.0.1/cmdline.c.orig 2013-06-17 20:18:36.000000000 +0200 +++ crash-7.0.1/cmdline.c 2013-07-10 20:10:19.101455093 +0200 @@ -62,7 +62,7 @@ if (!(pc->flags & (READLINE|SILENT|CMDLINE_IFILE|RCHOME_IFILE|RCLOCAL_IFILE))) - fprintf(fp, pc->prompt); + fputs(pc->prompt, fp); fflush(fp); /* --- crash-7.0.1/lkcd_common.c.orig 2013-06-17 20:18:36.000000000 +0200 +++ crash-7.0.1/lkcd_common.c 2013-07-10 20:11:00.596622762 +0200 @@ -1325,7 +1325,7 @@ va_end(ap); if (lkcd->fp) - fprintf(lkcd->fp, buf); + fputs(buf, lkcd->fp); else console(buf); } --- crash-7.0.1/netdump.c.orig 2013-06-17 20:18:36.000000000 +0200 +++ crash-7.0.1/netdump.c 2013-07-10 20:11:35.021477880 +0200 @@ -691,7 +691,7 @@ va_end(ap); if (nd->ofp) - fprintf(nd->ofp, buf); + fputs(buf, nd->ofp); else console(buf); } --- crash-7.0.1/xendump.c.orig 2013-06-17 20:18:36.000000000 +0200 +++ crash-7.0.1/xendump.c 2013-07-10 20:12:14.856572161 +0200 @@ -1974,9 +1974,9 @@ va_end(ap); if (xd->ofp) - fprintf(xd->ofp, buf); + fputs(buf, xd->ofp); else if (!XENDUMP_VALID() && CRASHDEBUG(7)) - fprintf(stderr, buf); + fputs(buf, stderr); } --- crash-7.0.1/filesys.c.orig 2013-06-17 20:18:36.000000000 +0200 +++ crash-7.0.1/filesys.c 2013-07-10 20:23:29.853077499 +0200 @@ -1290,10 +1290,10 @@ namespace_context); } else { if (!(pc->curcmd_flags & HEADER_PRINTED)) { - fprintf(fp, mount_hdr); + fputs(mount_hdr, fp); pc->curcmd_flags |= HEADER_PRINTED; } - fprintf(fp, buf2); + fputs(buf2, fp); } found = FALSE; fp = pc->tmpfile; @@ -1420,7 +1420,7 @@ sbp = ULONG(vfsmount_buf + OFFSET(vfsmount_mnt_sb)); if (flags) - fprintf(fp, mount_hdr); + fputs(mount_hdr, fp); fprintf(fp, "%s %s ", mkstring(buf1, VADDR_PRLEN, RJUST|LONG_HEX, MKSTR(*vfsmnt)), @@ -1449,7 +1449,7 @@ sprintf(buf1, "%s%s", buf3, buf4); while ((strlen(buf1) > 17) && (buf1[strlen(buf1)-2] == ' ')) strip_ending_char(buf1, ' '); - fprintf(fp, buf1); + fputs(buf1, fp); if (VALID_MEMBER(vfsmount_mnt_dirname)) { if (read_string(dirp, buf1, BUFSIZE-1)) @@ -1486,7 +1486,7 @@ fprintf(fp, "%s\n", mkstring(buf2, VADDR_PRLEN, CENTER, "OPEN FILES")); - fprintf(fp, mount_files_header); + fputs(mount_files_header, fp); files_header_printed = 1; } file_dump(0, *dp, inode, 0, DUMP_DENTRY_ONLY); @@ -2221,14 +2221,14 @@ #define PRINT_FILE_REFERENCE() \ if (!root_pwd_printed) { \ print_task_header(fp, tc, 0); \ - fprintf(fp, root_pwd); \ + fputs(root_pwd, fp); \ root_pwd_printed = TRUE; \ } \ if (!header_printed) { \ - fprintf(fp, files_header); \ + fputs(files_header, fp); \ header_printed = TRUE; \ } \ - fprintf(fp, buf4); \ + fputs(buf4, fp); \ ref->cmdflags |= FILES_REF_FOUND; #define FILENAME_COMPONENT(P,C) \ @@ -2506,7 +2506,7 @@ } else if (file) { if (!header_printed) { - fprintf(fp, files_header); + fputs(files_header, fp); header_printed = 1; } file_dump(file, 0, 0, i, @@ -3237,8 +3237,8 @@ if (STRNEQ(buf, "PID:")) { if (!STREQ(uses, "")) { if (!fuser_header_printed) { - fprintf(pc->saved_fp, - fuser_header); + fputs(fuser_header, + pc->saved_fp); fuser_header_printed = 1; } show_fuser(task_buf, uses); @@ -3294,7 +3294,7 @@ } if (!STREQ(uses, "")) { if (!fuser_header_printed) { - fprintf(pc->saved_fp, fuser_header); + fputs(fuser_header, pc->saved_fp); fuser_header_printed = 1; } show_fuser(task_buf, uses); --- crash-7.0.1/task.c.orig 2013-06-17 20:18:36.000000000 +0200 +++ crash-7.0.1/task.c 2013-07-10 20:25:20.984656782 +0200 @@ -2727,7 +2727,7 @@ print_task_header(pc->saved_fp, tc, 0); header_printed = TRUE; } - fprintf(pc->saved_fp, buf); + fputs(buf, pc->saved_fp); if (STRNEQ(buf, lookfor2)) BZERO(lookfor2, BUFSIZE); continue; @@ -2738,7 +2738,7 @@ print_task_header(pc->saved_fp, tc, 0); header_printed = TRUE; } - fprintf(pc->saved_fp, buf); + fputs(buf, pc->saved_fp); if (strstr(buf, lookfor3)) BZERO(lookfor3, BUFSIZE); continue; @@ -2754,7 +2754,7 @@ print_task_header(pc->saved_fp, tc, 0); header_printed = TRUE; } - fprintf(pc->saved_fp, buf); + fputs(buf, pc->saved_fp); if (strstr(buf, "{{\n")) sprintf(lookfor2, " }},"); else if (strstr(buf, "{\n")) @@ -3447,14 +3447,14 @@ } if (bt->stkptr) - sprintf(buf, mkstring(buf1, VADDR_PRLEN, + strcpy(buf, mkstring(buf1, VADDR_PRLEN, CENTER|RJUST|LONG_HEX, MKSTR(bt->stkptr))); else sprintf(buf, "%s", mkstring(buf1, VADDR_PRLEN, CENTER|RJUST, "--")); } else - sprintf(buf, mkstring(buf1, VADDR_PRLEN, + strcpy(buf, mkstring(buf1, VADDR_PRLEN, CENTER|RJUST|LONG_HEX, MKSTR(tc->task))); @@ -8612,7 +8612,7 @@ } len += strlen(buf); - fprintf(fp, buf); + fputs(buf, fp); } sigset >>= 1; --- crash-7.0.1/kernel.c.orig 2013-06-17 20:18:36.000000000 +0200 +++ crash-7.0.1/kernel.c 2013-07-10 20:35:26.124686738 +0200 @@ -1000,7 +1000,7 @@ if (REMOTE()) sprintf(buf, "%s:%s", pc->server, pc->server_memsrc); else - sprintf(buf, ACTIVE() ? pc->live_memsrc : pc->dumpfile); + strcpy(buf, ACTIVE() ? pc->live_memsrc : pc->dumpfile); error(INFO, "%s and %s do not match!\n", pc->system_map ? pc->system_map : @@ -1262,7 +1262,7 @@ if (REMOTE()) sprintf(buffer, "%s:%s", pc->server, pc->server_memsrc); else - sprintf(buffer, ACTIVE() ? "live system" : pc->dumpfile); + strcpy(buffer, ACTIVE() ? "live system" : pc->dumpfile); sprintf(buffer2, " %s is %s -- %s is %s\n", namelist, namelist_smp ? "SMP" : "not SMP", @@ -4381,13 +4381,13 @@ rem = (ulonglong)ts_nsec % (ulonglong)1000000000; sprintf(buf, "[%5lld.%06ld] ", nanos, rem/1000); ilen = strlen(buf); - fprintf(fp, buf); + fputs(buf, fp); } if (msg_flags & SHOW_LOG_LEVEL) { sprintf(buf, "<%x>", level); ilen += strlen(buf); - fprintf(fp, buf); + fputs(buf, fp); } for (i = 0, p = msg; i < text_len; i++, p++) { @@ -4901,7 +4901,7 @@ if (spec) open_tmpfile(); - fprintf(fp, sys_call_hdr); + fputs(sys_call_hdr, fp); for (i = 0, sct = sys_call_table; i < NR_syscalls; i++, sct++) { if (!(scp = value_symbol(*sct))) { --- crash-7.0.1/dev.c.orig 2013-06-17 20:18:36.000000000 +0200 +++ crash-7.0.1/dev.c 2013-07-10 20:39:49.179635470 +0200 @@ -224,7 +224,7 @@ switch (name_typecode) { case TYPE_CODE_ARRAY: - snprintf(buf, name_size, char_device_struct_buf + + snprintf(buf, name_size, "%s", char_device_struct_buf + OFFSET(char_device_struct_name)); break; case TYPE_CODE_PTR: @@ -294,7 +294,7 @@ switch (name_typecode) { case TYPE_CODE_ARRAY: - snprintf(buf, name_size, char_device_struct_buf + + snprintf(buf, name_size, "%s", char_device_struct_buf + OFFSET(char_device_struct_name)); break; case TYPE_CODE_PTR: