Blog: http://micah.cowan.name/

Email: micah@cowan.name

Launchpad: https://launchpad.net/~micahcowan

IRC: micahcowan


Member: 2007-04-17


The original version of my wiki page has been moved to MicahCowan/Bugs. It has served its purpose, which was to provide documentation of my work in IRC, and in bug triage and solution, with the goal of providing sufficient information to obtain membership. I'm still doing all of these things, but now that I'm an Ubuntu member, I no longer have the need to document each and every bug that I touch in a significant way, or each fellow that I spend a half-hour or more helping out in IRC.

My new goal is to make my way for MOTUship, so the new focus of this page will be to document specific work that I've done that might qualify me for consideration as an Ubuntu developer. This means I'll just be including bugs that I did packaging work for, such as submitting debdiffs, merging, syncing, or creation of new packages; and anything else that demonstrates that I am a capable developer who is able to coordinate with multiple development teams (including Debian and upstream developers), with a solid understanding not only of programming software, but in building/maintaining software that interoperates smoothly with the rest of the Ubuntu operating system.

Bugs I've Worked on

Below are some of the bugs I've worked on that I believe help demonstrate my competence as an Ubuntu developer. For a full list of bugs related to me, you can check my launchpad page.

Bugs for which I've submitted debdiffs, a patch, or at least a description on how to fix

[*] = patch approved and uploaded in Ubuntu.

[†] = patch approved and committed upstream.

Bugs I'm working on patching


cp dumps core when copying >4GB files to a VFAT filesystem


(LP) smtpmail.elc can't work


(LP) md5sum can't read md5 files with CRLF line terminators


(LP) vim doesn't recognize ProC syntax in edgy


(LP) :help does not work


Incomplete/broken mouse handling in screen


  • Bug 45930

    This was the first bug I dealt with. I was trying to run the jstest program on my USB joystick, but it wanted to segfault on a regular basis. My first response was to get a backtrace in gdb, but I noticed the backtrace happened during an attempt to print a string, obtained from an array. A little investigation revealed that an invalid index was being used into that array. I fixed the problem in the code and generated a debdiff. I'd found an already reported bug that fit my description, so I added some discussion, along with my patch, to the report. This patch went into the next version of the joystick package.

  • Bug 58256

    Unaware that this had actually been addressed by this point in CVS (I didn't know where to find the current development version), I hunted down and found this multiple-free() bug over a weekend. When I pointed it out to the developers, along with a request for help as to approach for the fix, they responded that it had already been addressed in CVS... :/ ...so I found the fix and submitted a debdiff to address the problem in the currently available package.

  • Bug 49079

    I happened across this bug by accident. I don't have access to the printer for which this bug was reported, and despite the fact that the guy who wrote the TuxPaint program is a friend of mine, I'm not a regular user of the program. I am, however, pretty proficient with the PostScript language, and since I was somewhat familiar with TuxPaint, my curiosity was piqued. I went ahead and looked into the code, and found a few points of interest that I thought might be contributing to the problems. I contacted the author of TuxPaint, and when I found out he didn't have much to do with the PostScript code in the program, I joined TuxPaint's development mailing list to discuss the problem and possible solutions. This resulted in a few possibilities, which I then submitted to the bug report for the reporting user to examine. Unfortunately, we haven't heard back from the user in order to verify whether the modifications have produced a solution. Discussion on TuxPaint development list.

  • Bug 38538 This is a relatively minor problem, but it's liable to bite many users (man pages say to try, e.g., "info ls", but only "info coreutils ls" will work). There is a quick-and-easy, but wrong, fix (to fix the man pages to refer to "info coreutils ls"), and there is a right, but fairly involved, fix, which requires modifications to the dpkg package (which includes install-info, wherein lies the bug). I'm not yet ready to put the time involved into doing the thing proper and right, but apparently nobody else really is, either. I had some brief interaction with the dpkg folks about it, and at some point will probably get back to looking into what would need to be done

  • Bug 75574

    This is due to a core-dump signal (SIGXFSZ) that is sent to processes that attempt to create a file beyond the maximum file size allowed by the file system. The original purpose of this signal, and the only thing SUSv3 specifies that it should be sent for, is to be sent to a process that has exceeded a soft process resource limit (such as set by ulimit) on file sizes. Apparently, though at the Large File Summit some specifications were issued that decided this should be sent in other circumstances. Alon Cox believes that these specifications (which Linux was conforming to, and therefore sent these signals) may have been superseded by SUS; in which case they'll be happy to entertain a patch if I provide it Smile :) Discussion on kernel mailing list is here

  • Bug 103929 Simple problem: colored bash prompts are only issued for xterm-color (not xterm, which also supports color; not to mention other color-capable terminals). The patch switches it to use "tput" to verify color support.

  • Bug 113227

    I wrote a patch to add automatic detection of the screen virtual terminal manager as supporting xterm-style mouse events. This has been submitted and approved by vim development, and is apparently slated for committal, but is not yet in the codebase.

Skills and Interests

I am familiar with and tend to be drawn to attempting to solve bugs having to do with (so far): C, C++, gawk, PostScript, PDF, TeX, vim, emacs, coreutils, shells, terminal magic (escape sequences and the like), locale problems, character encodings, nasty things that dump core.

I feel fairly familiar with packaging, and have experience doing debdiffs on a few different frameworks (debhelper, DBS, etc); but have little experience packaging from start to finish (have done so, but it hasn't been reviewed, and likely won't, as the project looks to be merged soon with another).

Things I've written and more-or-less finished include:


MicahCowan (last edited 2009-06-09 20:41:33 by 64)