summaryrefslogtreecommitdiff
path: root/indra/llplugin/slplugin/slplugin.cpp
diff options
context:
space:
mode:
authorLoren Shih <seraph@lindenlab.com>2010-06-28 12:32:21 -0400
committerLoren Shih <seraph@lindenlab.com>2010-06-28 12:32:21 -0400
commit3fca4b0d61ad4534f26a8963ed6381a76e4f7c19 (patch)
treebd563f39e6bbd5984c4c529bf0252de9b94f2ea5 /indra/llplugin/slplugin/slplugin.cpp
parent3ce3df564351ad7b6fb0acd4e0252b5f89f2a47e (diff)
parent8d18056e8296472d58a820fd77a6a66100e70661 (diff)
automated merge
Diffstat (limited to 'indra/llplugin/slplugin/slplugin.cpp')
-rw-r--r--indra/llplugin/slplugin/slplugin.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/indra/llplugin/slplugin/slplugin.cpp b/indra/llplugin/slplugin/slplugin.cpp
index 7d6dde1a58..4c955e875a 100644
--- a/indra/llplugin/slplugin/slplugin.cpp
+++ b/indra/llplugin/slplugin/slplugin.cpp
@@ -44,6 +44,7 @@
#if LL_DARWIN
#include <Carbon/Carbon.h>
+ #include "slplugin-objc.h"
#endif
#if LL_DARWIN || LL_LINUX
@@ -229,10 +230,19 @@ int main(int argc, char **argv)
signal(SIGSYS, &crash_handler); // non-existent system call invoked
#endif
+#if LL_DARWIN
+ setupCocoa();
+ createAutoReleasePool();
+#endif
+
LLPluginProcessChild *plugin = new LLPluginProcessChild();
plugin->init(port);
+#if LL_DARWIN
+ deleteAutoReleasePool();
+#endif
+
LLTimer timer;
timer.start();
@@ -260,6 +270,9 @@ int main(int argc, char **argv)
#endif
while(!plugin->isDone())
{
+#if LL_DARWIN
+ createAutoReleasePool();
+#endif
timer.reset();
plugin->idle();
#if LL_DARWIN
@@ -377,6 +390,10 @@ int main(int argc, char **argv)
// exception handler such as QuickTime.
//checkExceptionHandler();
#endif
+
+#if LL_DARWIN
+ deleteAutoReleasePool();
+#endif
}
delete plugin;