Merge pull request #487 from rstacruz/listener_fix

Fix the listener/watcher
This commit is contained in:
Thomas Reynolds 2012-06-16 15:10:20 -07:00
commit f3f508399c

View file

@ -32,6 +32,8 @@ module Middleman
)
mount_instance(app)
start_file_watcher unless options[:"disable-watcher"]
@initialized ||= false
unless @initialized
@ -39,7 +41,9 @@ module Middleman
register_signal_handlers unless ::Middleman::WINDOWS
start_file_watcher unless options[:"disable-watcher"]
# Save the last-used options so it may be re-used when
# reloading later on.
@last_options = options
@webrick.start
end
@ -56,7 +60,7 @@ module Middleman
# @return [void]
def reload
stop
start
start @last_options
end
# Stop the current instance, exit Webrick
@ -79,7 +83,10 @@ module Middleman
if added_and_modified.length > 0
# See if the changed file is config.rb or lib/*.rb
return reload if needs_to_reload?(added_and_modified)
if needs_to_reload?(added_and_modified)
reload
return listener.stop
end
# Otherwise forward to Middleman
added_and_modified.each do |path|
@ -89,7 +96,10 @@ module Middleman
if removed.length > 0
# See if the changed file is config.rb or lib/*.rb
return reload if needs_to_reload?(removed)
if needs_to_reload?(removed)
reload
return listener.stop
end
# Otherwise forward to Middleman
removed.each do |path|