diff options
author | Jeffrey Stedfast <fejj@ximian.com> | 2002-04-11 03:38:56 +0800 |
---|---|---|
committer | Jeffrey Stedfast <fejj@src.gnome.org> | 2002-04-11 03:38:56 +0800 |
commit | f6b7c9d6e591549bcea385dc08e6b70cafacf742 (patch) | |
tree | cff0eb915f09c8826125c43142f9861aad2981ab /composer/e-msg-composer.c | |
parent | 796b9fe197173d909a1f02e04bd25c5dafff350a (diff) | |
download | gsoc2013-evolution-f6b7c9d6e591549bcea385dc08e6b70cafacf742.tar.gz gsoc2013-evolution-f6b7c9d6e591549bcea385dc08e6b70cafacf742.tar.zst gsoc2013-evolution-f6b7c9d6e591549bcea385dc08e6b70cafacf742.zip |
No need to query for the persist-stream interface here, just re-use
2002-04-08 Jeffrey Stedfast <fejj@ximian.com>
* e-msg-composer.c (set_editor_text): No need to query for the
persist-stream interface here, just re-use
composer->persist_stream_interface - this might improve the speed
at which a reply action brings up the composer.
svn path=/trunk/; revision=16425
Diffstat (limited to 'composer/e-msg-composer.c')
-rw-r--r-- | composer/e-msg-composer.c | 23 |
1 files changed, 10 insertions, 13 deletions
diff --git a/composer/e-msg-composer.c b/composer/e-msg-composer.c index d269e705ff..9aad5b863f 100644 --- a/composer/e-msg-composer.c +++ b/composer/e-msg-composer.c @@ -882,28 +882,25 @@ set_editor_text (EMsgComposer *composer, const char *text) BonoboWidget *editor; CORBA_Environment ev; + g_return_if_fail (composer->persist_stream_interface != CORBA_OBJECT_NIL); + + persist = composer->persist_stream_interface; + editor = BONOBO_WIDGET (composer->editor); CORBA_exception_init (&ev); - persist = (Bonobo_PersistStream) bonobo_object_client_query_interface ( - bonobo_widget_get_server (editor), "IDL:Bonobo/PersistStream:1.0", &ev); - - g_return_if_fail (persist != CORBA_OBJECT_NIL); - stream = bonobo_stream_mem_create (text, strlen (text), - TRUE, FALSE); + stream = bonobo_stream_mem_create (text, strlen (text), TRUE, FALSE); Bonobo_PersistStream_load (persist, (Bonobo_Stream)bonobo_object_corba_objref (BONOBO_OBJECT (stream)), "text/html", &ev); if (ev._major != CORBA_NO_EXCEPTION) { /* FIXME. Some error message. */ return; } - if (ev._major != CORBA_SYSTEM_EXCEPTION) - CORBA_Object_release (persist, &ev); - Bonobo_Unknown_unref (persist, &ev); CORBA_exception_free (&ev); - bonobo_object_unref (BONOBO_OBJECT(stream)); + + bonobo_object_unref (BONOBO_OBJECT (stream)); } static void @@ -2736,7 +2733,7 @@ create_composer (void) gtk_widget_show (composer->editor); e_msg_composer_show_attachments (composer, FALSE); - + prepare_engine (composer); if (composer->editor_engine == CORBA_OBJECT_NIL) { e_activation_failure_dialog (GTK_WINDOW (composer), @@ -2749,12 +2746,12 @@ create_composer (void) } gtk_signal_connect (GTK_OBJECT (composer), "map", map_default_cb, NULL); - + if (am == NULL) { am = autosave_manager_new (); } autosave_manager_register (am, composer); - + return composer; } |