Browse Source

fixing crash bug on dot in json files

merge-requests/365/head
oyvang 11 years ago
parent
commit
68d0475318
  1. 18
      juci/notebook.cc
  2. 1
      juci/notebook.h
  3. 1
      juci/window.cc

18
juci/notebook.cc

@ -158,6 +158,8 @@ bool Notebook::Controller::OnKeyRelease(GdkEventKey* key) {
bool Notebook::Controller::GeneratePopup(int key_id) { bool Notebook::Controller::GeneratePopup(int key_id) {
INFO("Notebook genereate popup, getting iters"); INFO("Notebook genereate popup, getting iters");
std::string path = text_vec_.at(CurrentPage())->path();
if(!LeagalExtension(path.substr(path.find_last_of(".") + 1))) return false;
// Get function to fill popup with suggests item vector under is for testing // Get function to fill popup with suggests item vector under is for testing
Gtk::TextIter beg = CurrentTextView().get_buffer()->get_insert()->get_iter(); Gtk::TextIter beg = CurrentTextView().get_buffer()->get_insert()->get_iter();
Gtk::TextIter end = CurrentTextView().get_buffer()->get_insert()->get_iter(); Gtk::TextIter end = CurrentTextView().get_buffer()->get_insert()->get_iter();
@ -712,3 +714,19 @@ void Notebook::Controller::AskToSaveDialog() {
} }
} }
bool Notebook::Controller::LeagalExtension(std::string e) {
std::transform(e.begin(), e.end(),e.begin(), ::tolower);
std::vector<std::string> extensions =
text_vec_.at(CurrentPage).leagalParseExtensions();
if(std::find(extensions.begin(), extensions.end(), e)) {
// if(e=="c" ||e=="cc" ||e=="cpp" ||e=="cxx" || e=="c++"||
// e=="h" ||e=="hh" ||e=="hpp" ||e=="hxx" || e=="h++"){
DEBUG("Leagal extension");
return true;
}
DEBUG("Ileagal extension");
return false;
}

1
juci/notebook.h

@ -89,6 +89,7 @@ namespace Notebook {
int &current_x, int &current_x,
int &current_y); int &current_y);
void AskToSaveDialog(); void AskToSaveDialog();
bool LeagalExtension(std::string extension);
Glib::RefPtr<Gtk::Builder> m_refBuilder; Glib::RefPtr<Gtk::Builder> m_refBuilder;
Glib::RefPtr<Gio::SimpleActionGroup> refActionGroup; Glib::RefPtr<Gio::SimpleActionGroup> refActionGroup;
Source::Config source_config_; Source::Config source_config_;

1
juci/window.cc

@ -95,7 +95,6 @@ Window::Window() :
running.unlock(); running.unlock();
} }
}); });
this->signal_button_release_event(). this->signal_button_release_event().
connect(sigc::mem_fun(*this,&Window::OnMouseRelease),false); connect(sigc::mem_fun(*this,&Window::OnMouseRelease),false);
terminal_.Terminal().signal_button_release_event(). terminal_.Terminal().signal_button_release_event().

Loading…
Cancel
Save