<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent changes to patches</title><link href="https://sourceforge.net/p/jmdns/patches/" rel="alternate"/><link href="https://sourceforge.net/p/jmdns/patches/feed.atom" rel="self"/><id>https://sourceforge.net/p/jmdns/patches/</id><updated>2012-10-19T03:03:46Z</updated><subtitle>Recent changes to patches</subtitle><entry><title>bKlAGihuyEgasx</title><link href="https://sourceforge.net/p/jmdns/patches/36/" rel="alternate"/><published>2012-10-19T03:03:46Z</published><updated>2012-10-19T03:03:46Z</updated><author><name>Anonymous</name><uri>https://sourceforge.net/u/userid-None/</uri></author><id>https://sourceforge.net77171abf3ab35ccd889715ab1120341e89e65821</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;6NTxym A big thank you for your post. Cool.&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Another thread preventing application shutdown</title><link href="https://sourceforge.net/p/jmdns/patches/35/" rel="alternate"/><published>2012-06-27T23:04:05Z</published><updated>2012-06-27T23:04:05Z</updated><author><name>Trejkaz</name><uri>https://sourceforge.net/u/trejkaz/</uri></author><id>https://sourceforge.net8ddd117da174fd91cb75f0ca2ebbf7a9c3abd0ae</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;I found another thread which was preventing application shutdown, this time spawned by an executor.&lt;/p&gt;
&lt;p&gt;This patch also adds names to JmDNS' executor threads to make it easier to figure out which one causes it if it occurs in the future (similar to what's being done at Lucene.)&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Non-daemon threads prevent application shutdown</title><link href="https://sourceforge.net/p/jmdns/patches/34/" rel="alternate"/><published>2012-06-08T06:30:43Z</published><updated>2012-06-08T06:30:43Z</updated><author><name>Trejkaz</name><uri>https://sourceforge.net/u/trejkaz/</uri></author><id>https://sourceforge.net7c5c590c84b8bc779a079b88dc9ef435871ca1cc</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Our application wasn't shutting down after the last window closed. Turned out JmDNS had some non-daemon threads keeping the JVM alive.&lt;/p&gt;
&lt;p&gt;This patch marks those as daemons.&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>JmmDNS wasn't requesting on loopback</title><link href="https://sourceforge.net/p/jmdns/patches/33/" rel="alternate"/><published>2012-06-07T06:57:34Z</published><updated>2012-06-07T06:57:34Z</updated><author><name>Trejkaz</name><uri>https://sourceforge.net/u/trejkaz/</uri></author><id>https://sourceforge.netb48586aad09de7b2d24ca5e8f46e0f43085994e5</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Updating to JmDNS 3.x broke our test case where the server is advertised on the loopback address. This patch makes that work again.&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>JmmDNS improvements</title><link href="https://sourceforge.net/p/jmdns/patches/32/" rel="alternate"/><published>2012-06-07T06:07:24Z</published><updated>2012-06-07T06:07:24Z</updated><author><name>Trejkaz</name><uri>https://sourceforge.net/u/trejkaz/</uri></author><id>https://sourceforge.net9e9a46e403361d78d87cd23cb16d5cc2f3ec5d6c</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Tracking down my own issue in 3525349, this patch fixes some issues and improves things a little but without fixing it...&lt;/p&gt;
&lt;p&gt;Fix #1: When JmmDNS started, it wasn't scanning for network interfaces up-front. Now it does.&lt;/p&gt;
&lt;p&gt;Fix #2: The timeout was being applied incorrectly - if you had N network interfaces it would apply a timeout of up to N times your requested timeout.&lt;/p&gt;
&lt;p&gt;Fix #3: The executor wasn't being shut down in the event of an error, causing threads to hang around forever.&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>free Factory's DNSTaskStarter when calling JmDNS.close()</title><link href="https://sourceforge.net/p/jmdns/patches/30/" rel="alternate"/><published>2012-03-30T16:16:53Z</published><updated>2012-03-30T16:16:53Z</updated><author><name>Anonymous</name><uri>https://sourceforge.net/u/userid-None/</uri></author><id>https://sourceforge.net8a255a6fa95a61f1b2de069a5c0cef8186cf30d8</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;calling JmDNS.create() and then calling close() on the returned instance doesn't free the associated DNSTaskStarter from within the Factory.&lt;/p&gt;
&lt;p&gt;this becomes evident during long-lived code which repeatedly creates and closes JmDNS, and the problem is easily reproducible for testing with a simple loop of code.&lt;/p&gt;
&lt;p&gt;i've fixed this by adding a disposeStarter(JmDNS ...) method to the Factory in DNSTaskStarter, and then calling this method from close() in JmDNSImpl&lt;/p&gt;
&lt;p&gt;i've been chasing a memory leak in JmDNS for a short while, admittedly my previous patch was indeed premature - but this one actually nails the problem (have double-checked by comparing heap dumps, etc)&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>free resources properly in DNSStatefulObjectSemaphore</title><link href="https://sourceforge.net/p/jmdns/patches/29/" rel="alternate"/><published>2012-03-30T03:19:02Z</published><updated>2012-03-30T03:19:02Z</updated><author><name>Anonymous</name><uri>https://sourceforge.net/u/userid-None/</uri></author><id>https://sourceforge.net54adc89f044b33b643695eb541ad933276a09ec2</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;method signalEvent() in DNSStatefulObjectSemaphore was not removing semaphores from the correct collection, it was removing them from the local copy (used only for iteration), and not actually from the class's ConcurrentHashMap - thus it was holding/'leaking' resources, including references to threads (ouch), preventing garbage collection.&lt;/p&gt;
&lt;p&gt;Patch is a one-liner! :)&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>avoid slow getHostName() when name passed in</title><link href="https://sourceforge.net/p/jmdns/patches/27/" rel="alternate"/><published>2011-09-15T15:50:42Z</published><updated>2011-09-15T15:50:42Z</updated><author><name>SteveT</name><uri>https://sourceforge.net/u/mstevetodd/</uri></author><id>https://sourceforge.net63da9639cfdd615d8b01a56ae8d5ebdc55212947</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;On certain networks, getHostName() is very slow (10 or 20 seconds).&lt;br /&gt;
I am calling "JmDNS.create(addr, hostname)".  Note the passing of an alread-known hostname.  However, there is some code in HostInfo.java which calls getHostName() even if hostname was passed in (see patch).  This patch alleviated this in my application.  I post it here for possible inclusion in JmDNS.  If my thinking is not correct, or I am missing some critical usage which forces the lookup, please advise.  I'm always trying to learn.&lt;br /&gt;
Regards,&lt;br /&gt;
SteveT&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Remove call to isEmpty (for Android)</title><link href="https://sourceforge.net/p/jmdns/patches/26/" rel="alternate"/><published>2010-11-20T00:17:49Z</published><updated>2010-11-20T00:17:49Z</updated><author><name>Jason LeBrun</name><uri>https://sourceforge.net/u/jblebrun/</uri></author><id>https://sourceforge.net7684497d99d4fceb0ceb6f337e57a70c00f7c4bf</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;I noticed in the log you've done this before. Here's a new one that's popped up.&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Replace dots with dashes in hostname instead of truncating </title><link href="https://sourceforge.net/p/jmdns/patches/25/" rel="alternate"/><published>2010-11-17T23:06:47Z</published><updated>2010-11-17T23:06:47Z</updated><author><name>Jason LeBrun</name><uri>https://sourceforge.net/u/jblebrun/</uri></author><id>https://sourceforge.neta469030f38b96eaa8e01f6ae1a4ea5cae6d40e46</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;When creating a HostInfo, the name is currently truncated at the first dot. Since the default Java behavior is to return a dotted-quad IP address when no hostname is present, this results in devices all having similar names (192, 192-1, 192-2, etc). If we instead replace the dots with dashes, then the hostname chosen is a bit more descriptive. &lt;/p&gt;
&lt;p&gt;It's fairly minor, but it's sometimes nice in debugging scenarios to have the slightly more descriptive hostname default. I've been using this for a while now, with no negative repercussions, but I'm not sure if there's something bad that might happen in other setups when using this approach.&lt;/p&gt;&lt;/div&gt;</summary></entry></feed>