Moving the connection out of the subroutine helped (can't believe I missed that one). Thanks. It still leaks a little when the list refreshes, but its much less. I can set it to refresh far less often. Once every 5 minutes would be more than adequate, and that would be a little over 1mb of memory per hour at the rate it's leaking now. Given that this thing probably won't be running more than 10 hours that whould make it livable. I'd still like to know what's causing it though.