]> git.lyx.org Git - lyx.git/blobdiff - src/insets/insetcite.C
prevent crash when inserting minipage in table cell,
[lyx.git] / src / insets / insetcite.C
index e1f51e61d36b2d0dce95f9a286c3b12eda506f1f..e7437b480436623e10b3a651da53316a9ba576fe 100644 (file)
@@ -23,6 +23,8 @@
 
 #include <map>
 
+using namespace lyx::support;
+
 using std::ostream;
 using std::vector;
 using std::map;
@@ -326,30 +328,25 @@ void InsetCitation::setLoadingBuffer(Buffer const * buffer, bool state) const
 dispatch_result InsetCitation::localDispatch(FuncRequest const & cmd)
 {
        switch (cmd.action) {
-               case LFUN_INSET_EDIT:
-                       // A call to edit indicates that we're no longer loading the
-                       // buffer but doing some real work.
-                       setLoadingBuffer(cmd.view()->buffer(), false);
-                       InsetCommandMailer("citation", *this).showDialog(cmd.view());
-                       break;
-
-               default:
-                       return InsetCommand::localDispatch(cmd);
+       case LFUN_INSET_EDIT:
+               // A call to edit indicates that we're no longer loading the
+               // buffer but doing some real work.
+               setLoadingBuffer(cmd.view()->buffer(), false);
+               InsetCommandMailer("citation", *this).showDialog(cmd.view());
+               return DISPATCHED;
+
+       default:
+               return InsetCommand::localDispatch(cmd);
        }
-       return DISPATCHED;
 }
 
 
 int InsetCitation::ascii(Buffer const * buffer, ostream & os, int) const
 {
-       string label;
-
        if (cache.params == params() && cache.style == getStyle(buffer))
-               label = cache.generated_label;
+               os << cache.generated_label;
        else
-               label = generateLabel(buffer);
-
-       os << label;
+               os << generateLabel(buffer);
        return 0;
 }