Login
[x]
Log in using an account from:
Fedora Account System
Red Hat Associate
Red Hat Customer
Or login using a Red Hat Bugzilla account
Forgot Password
Login:
Hide Forgot
Create an Account
Red Hat Bugzilla – Attachment 870268 Details for
Bug 1071689
[abrt] bluefish: g_malloc(): bluefish killed by SIGTRAP
[?]
New
Simple Search
Advanced Search
My Links
Browse
Requests
Reports
Current State
Search
Tabular reports
Graphical reports
Duplicates
Other Reports
User Changes
Plotly Reports
Bug Status
Bug Severity
Non-Defaults
|
Product Dashboard
Help
Page Help!
Bug Writing Guidelines
What's new
Browser Support Policy
5.0.4.rh83 Release notes
FAQ
Guides index
User guide
Web Services
Contact
Legal
This site requires JavaScript to be enabled to function correctly, please enable it.
[patch]
Patch fixes misc bugs in 2.2.5
bf_225_misc.patch (text/plain), 12.82 KB, created by
Jim Hayward
on 2014-03-04 07:16:31 UTC
(
hide
)
Description:
Patch fixes misc bugs in 2.2.5
Filename:
MIME Type:
Creator:
Jim Hayward
Created:
2014-03-04 07:16:31 UTC
Size:
12.82 KB
patch
obsolete
>Index: configure.ac >=================================================================== >--- configure.ac (revision 8264) >+++ configure.ac (working copy) >@@ -190,7 +190,7 @@ > fi > ] > ) >-if test "x$BF_want_development" != "no" ; then >+if test "x$BF_want_development" != "xno" ; then > AC_DEFINE([DEVELOPMENT], [1], [Define to 1 if you want to have development checks. Recommended when compiling from svn.]) > fi > >Index: src/bf_lib.c >=================================================================== >--- src/bf_lib.c (revision 8264) >+++ src/bf_lib.c (working copy) >@@ -53,6 +53,8 @@ > > #ifdef REFP_DEBUG > void refcpointer_ref(Trefcpointer *rp) { >+ if (!rp) >+ return; > rp->count++; > g_print("refcpointer_ref, %p refcount=%d\n",rp, rp->count); > } >@@ -72,6 +74,8 @@ > } > > void refcpointer_unref(Trefcpointer *rp) { >+ if (!rp) >+ return; > rp->count--; > #ifdef REFP_DEBUG > g_print("refcpointer_unref, %p refcount=%d %s\n",rp, rp->count, (rp->count ==0 ? "freeing data" : "")); >Index: src/bluefish.c >=================================================================== >--- src/bluefish.c (revision 8264) >+++ src/bluefish.c (working copy) >@@ -224,6 +224,7 @@ > msg_queue_check_server(FALSE); > } > #endif /* WITH_MSG_QUEUE */ >+ file_static_queues_init(); /* if a template is used, the first untiled document will already load a file */ > break; > case 1: > bfwin_create_main(startup->firstbfwin); >@@ -235,7 +236,6 @@ > #endif > break; > case 2: >- file_static_queues_init(); > if (startup->filenames) { > GList *tmplist = g_list_first(startup->filenames); > DEBUG_MSG("startup_in_idle, we have filenames, load them\n"); >@@ -274,9 +274,9 @@ > handle_signals(); > #endif > #ifndef MAC_INTEGRATION /*We need startup to stop the startup_main_loop running*/ >- g_free(startup); >+ g_free(startup); > #endif >- >+ > return FALSE; > break; > } >@@ -437,7 +437,7 @@ > } > > /* Dynamically create paths for Win32 *after* we have converted the relative >- filenames from the commandline to GFile objects */ >+ filenames from the commandline to GFile objects */ > #ifdef WIN32 > path = g_malloc0(MAX_PATH+1); > if (GetModuleFileName(NULL, path, MAX_PATH)) { >@@ -453,7 +453,7 @@ > else { > g_print("Configuration file(s) could not be found.\nExiting now.\n"); > g_free(path); >- bluefish_exit_request(); >+ bluefish_exit_request(); > } > g_free(path); > #endif >@@ -502,7 +502,7 @@ > g_signal_connect (theApp, > "NSApplicationBlockTermination", > G_CALLBACK (osx_block_termination_cb), >- NULL); >+ NULL); > gdk_poll_func = g_main_context_get_poll_func (NULL); > g_main_context_set_poll_func (NULL, orig_poll_func); /* use virgin polling funtion for startup loop */ > startup->startup_main_loop = g_main_loop_new (NULL, FALSE); >Index: src/document.c >=================================================================== >--- src/document.c (revision 8264) >+++ src/document.c (working copy) >@@ -410,7 +410,7 @@ > DEBUG_MSG("documentlist_return_document_from_filename, not found, returning NULL\n"); > return NULL; > #else >- return g_hash_table_lookup(main_v.alldochash, uri); >+ return g_hash_table_lookup(main_v->alldochash, uri); > #endif > } > >@@ -853,7 +853,7 @@ > if (!doc) { > return FALSE; > } >- if (doc->modified || doc->uri || doc->autosave_uri || doc->status == DOC_STATUS_LOADING) { >+ if (doc->modified || doc->uri || doc->autosave_uri || doc->status != DOC_STATUS_COMPLETE) { > return FALSE; > } > if (gtk_text_buffer_get_char_count(doc->buffer) > 0) { >@@ -1018,12 +1018,15 @@ > doc->status = status; > switch (status) { > case DOC_STATUS_COMPLETE: >+ g_object_set(G_OBJECT(doc->view), "editable", TRUE, NULL); > doc->modified = FALSE; > break; > case DOC_STATUS_ERROR: >+ g_object_set(G_OBJECT(doc->view), "editable", TRUE, NULL); > color = main_v->props.tab_color_error; > break; > case DOC_STATUS_LOADING: >+ g_object_set(G_OBJECT(doc->view), "editable", FALSE, NULL); > color = main_v->props.tab_color_loading; > break; > } >@@ -2295,14 +2298,15 @@ > Tdocument *switch_to_doc=NULL; > GSList *tmpslist; > GList *tmplist; >- DEBUG_MSG("doc_destroy(%p,%d);\n", doc, delay_activation); >+ DEBUG_MSG("doc_destroy(%p,%d), doc->status=%d\n", doc, delay_activation, doc->status); > > tmplist = g_list_next(doc->recentpos); > if (tmplist) > switch_to_doc = tmplist->data; >- >- if (doc->status == DOC_STATUS_ERROR) { >+ if (doc->status == DOC_STATUS_LOADING) { > bfwin_docs_not_complete(doc->bfwin, FALSE); >+ DEBUG_MSG("doc_destroy, called bfwin_docs_not_complete(), bfwin->num_docs_not_completed=%d\n",BFWIN(doc->bfwin)->num_docs_not_completed); >+ } else if (doc->status == DOC_STATUS_ERROR) { > if (doc->uri && bfwin->session) > remove_filename_from_recentlist(bfwin, FALSE, doc->uri); /* Remove inaccesible files from OpenRecent list */ > } >Index: src/file.c >=================================================================== >--- src/file.c (revision 8264) >+++ src/file.c (working copy) >@@ -1,7 +1,7 @@ > /* Bluefish HTML Editor > * file.c - file operations based on GIO > * >- * Copyright (C) 2002-2012 Olivier Sessink >+ * Copyright (C) 2002-2014 Olivier Sessink > * > * This program is free software; you can redistribute it and/or modify > * it under the terms of the GNU General Public License as published by >@@ -76,6 +76,7 @@ > void > file_static_queues_init(void) > { >+ DEBUG_MSG("file_static_queues_init, started\n"); > queue_init(&ofqueue, 8, openfile_run); > queue_init(&ffdqueue, 8, findfiles_rundir); > queue_init(&fiqueue, 8, fill_fileinfo_run); >@@ -555,7 +556,7 @@ > gchar *buffer = NULL; > gchar *etag = NULL; > gsize size = 0; >- >+ DEBUG_MSG("openfile_async_lcb, of=%p with uri=%p\n",of,of->uri); > g_file_load_contents_finish(of->uri, res, &buffer, &size, &etag, &error); > if (error) { > DEBUG_MSG("openfile_async_lcb, finished, received error code %d: %s\n", error->code, error->message); >@@ -590,6 +591,7 @@ > openfile_run(gpointer data) > { > Topenfile *of = data; >+ DEBUG_MSG("openfile_run, start async load for of=%p with uri=%p\n",of,of->uri); > g_file_load_contents_async(of->uri, of->cancel, openfile_async_lcb, of); > } > >@@ -599,6 +601,7 @@ > { > Topenfile *of; > of = g_slice_new(Topenfile); >+ DEBUG_MSG("file_openfile_uri_async, of=%p, called for uri=%p\n",of,uri); > of->callback_data = callback_data; > of->callback_func = callback_func; > of->uri = uri; >@@ -634,9 +637,11 @@ > DEBUG_SIG("file2doc_finished_idle_lcb, started, priority %d\n",FILEINTODOC_PRIORITY); > DEBUG_MSG("fileintodoc_finished_idle_lcb, loading the data for doc %p\n",fid->doc); > if (fid->isTemplate || fid->untiledRecovery) { >- doc_buffer_to_textbox(fid->doc, fid->buffer->data, fid->buflen, FALSE, TRUE); >- /* DEBUG_MSG("fileintodoc_lcb, fid->doc->hl=%p, %s, first=%p\n",fid->doc->hl,fid->doc->hl->type,((GList *)g_list_first(main_v->filetypelist))->data); */ >- doc_reset_filetype(fid->doc, fid->doc->uri, fid->buffer->data, fid->buflen); >+ if (fid->buffer) { >+ doc_buffer_to_textbox(fid->doc, fid->buffer->data, fid->buflen, FALSE, TRUE); >+ /* DEBUG_MSG("fileintodoc_lcb, fid->doc->hl=%p, %s, first=%p\n",fid->doc->hl,fid->doc->hl->type,((GList *)g_list_first(main_v->filetypelist))->data); */ >+ doc_reset_filetype(fid->doc, fid->doc->uri, fid->buffer->data, fid->buflen); >+ } > doc_set_tooltip(fid->doc); > doc_set_status(fid->doc, DOC_STATUS_COMPLETE); > bfwin_docs_not_complete(fid->doc->bfwin, FALSE); >@@ -666,7 +671,9 @@ > if (fid->bfwin->current_document == fid->doc) { > doc_force_activate(fid->doc); > } >- refcpointer_unref(fid->buffer); >+ if (fid->buffer) { >+ refcpointer_unref(fid->buffer); >+ } > fileintodoc_cleanup(data); > return FALSE; > } >@@ -675,6 +682,7 @@ > fileintodoc_lcb(Topenfile_status status, GError * gerror, Trefcpointer * buffer, goffset buflen, gpointer data) > { > Tfileintodoc *fid = data; >+ DEBUG_MSG("fileintodoc_lcb, fid=%p,status=%d\n",fid,status); > switch (status) { > case OPENFILE_FINISHED: > /* a GtkTextView with lots of data displays incredibly slow. So during >@@ -710,8 +718,13 @@ > case OPENFILE_ERROR_NOCHANNEL: > case OPENFILE_ERROR_NOREAD: > /* TODO: use gerror information to notify the user, for example in the statusbar */ >- DEBUG_MSG("fileitodoc_lcb, ERROR status=%d, cleanup!!!!!\n", status); >+ DEBUG_MSG("fileitodoc_lcb, ERROR for %s status=%d, cleanup!!!!!\n", g_file_get_uri(fid->uri), status); >+ if (fid->isTemplate) { >+ g_idle_add_full(FILEINTODOC_PRIORITY,fileintodoc_finished_idle_lcb,fid,NULL); >+ break; >+ } > fid->doc->load = NULL; >+ bfwin_docs_not_complete(fid->doc->bfwin, FALSE); > fileintodoc_cleanup(data); > break; > } >@@ -723,6 +736,7 @@ > { > Tfileintodoc *fid; > fid = g_slice_new(Tfileintodoc); >+ DEBUG_MSG("file_into_doc, fid=%p, called for doc=%p, uri=%p,isTemplate=%d,untiledRecovery=%d\n",fid,doc,uri,isTemplate,untiledRecovery); > fid->bfwin = doc->bfwin; > fid->doc = doc; > fid->isTemplate = isTemplate; >@@ -809,7 +823,7 @@ > > f2d->recovery_status = 2; > doc_buffer_to_textbox(f2d->doc, f2d->buffer->data, f2d->buflen, FALSE, TRUE); >- g_print("file2doc_finished_idle_lcb, recovery of existing file, inserted original file\n"); >+ DEBUG_MSG("file2doc_finished_idle_lcb, recovery of existing file, inserted original file\n"); > f2d->doc->block_undo_reg = TRUE; > doc_unre_new_group(f2d->doc); > doc_unre_add(f2d->doc, f2d->buffer->data, 0, g_utf8_strlen(f2d->buffer->data, f2d->buflen), UndoDelete); >Index: src/file_dialogs.c >=================================================================== >--- src/file_dialogs.c (revision 8264) >+++ src/file_dialogs.c (working copy) >@@ -1058,6 +1058,7 @@ > if (close_window) { > bfwin_destroy_and_cleanup(BFWIN(doc->bfwin)); > } >+ DEBUG_MSG("doc_close_single_backend, doc_is_empty_non_modified_and_nameless returned TRUE, return TRUE\n"); > return TRUE; > } > if (doc->modified) { >Index: src/file_treemodel.c >=================================================================== >--- src/file_treemodel.c (revision 8264) >+++ src/file_treemodel.c (working copy) >@@ -145,22 +145,27 @@ > static gchar *get_toplevel_name_for_uri(gchar * curi) > { > gchar *needle; >+ const gchar *slash = "/"; > if (!curi) > return NULL; > > if (curi[0] == '/') >- return g_strdup("/"); >+ return g_strdup(slash); > > if (strncmp(curi, "file:///", 8) == 0) >- return g_strdup("/"); >+ return g_strdup(slash); > > needle = strstr(curi, "://"); > DEBUG_MSG("searching for toplevel, got non-local uri %s\n", needle); >- if (!needle) { >+ if (!needle || *(needle+3) == '\0') { > g_warning("cannot handle uri %s\n", curi); > return NULL; > } > needle = strchr(needle + 3, '/'); >+ if (needle == NULL) { >+ /* we have a string like sftp://server.com */ >+ return g_strconcat(curi, slash, NULL); >+ } > return g_strndup(curi, needle - curi + 1); > } > >@@ -1084,7 +1089,7 @@ > name = get_toplevel_name(tmp); > /* there was no parent for this filesystem yet */ > DEBUG_MSG("filetreemodel_build_dir, adding parent %s as fake folder\n", name); >- record = add_single_uri(ftm, NULL, tmp, name, DIR_MIME_TYPE, "folder", TRUE, PANGO_WEIGHT_NORMAL); >+ record = add_single_uri(ftm, NULL, tmp, name?name:"?", DIR_MIME_TYPE, "folder", TRUE, PANGO_WEIGHT_NORMAL); > g_free(name); > break; > } else { >@@ -1260,7 +1265,11 @@ > if (record->icon_name) { > g_value_set_string(value, record->icon_name); > } else { >+#ifndef MAC_INTEGRATION > g_value_set_string(value, "gtk-file"); >+#else >+ g_value_set_string(value, "text-x-generic"); >+#endif > } > break; > case filetreemodel_COL_WEIGHT: >Index: src/plugin_about/about.c >=================================================================== >--- src/plugin_about/about.c (revision 8264) >+++ src/plugin_about/about.c (working copy) >@@ -2,7 +2,7 @@ > * about.c - the About dialog > * > * Copyright (C) 2004 Eugene Morenko(More) more@irpin.com >- * Copyright (C) 2008-2011 Olivier Sessink >+ * Copyright (C) 2008-2014 Olivier Sessink > * Copyright (C) 2011 James Hayward > * > * This program is free software; you can redistribute it and/or modify >@@ -195,9 +195,11 @@ > > const gchar *authors[] = { > "Olivier Sessink <olivier@bluefish.openoffice.nl> (Project leader)", >+ "Andrius <andriusr@yahoo.com>", > "Jim Hayward <jimhayward@linuxexperience.net>", > "Daniel Leidert <daniel.leidert@wgdd.de>", > "Shawn Novak <kernel86@gmail.com>", >+ "Frédéric Falsetti <falsetti@clansco.org>", > _("\nDevelopers of previous releases:"), > "Alastair Porter <alastair@porter.net.nz>", > "Antti-Juhani Kaijanaho", >@@ -221,8 +223,9 @@ > "Mandrake: Todd Lyons <todd@mrball.net>", > "Redhat: Matthias Haase <matthias_haase@bennewitz.com>", > "Windows: Shawn Novak <kernel86@gmail.com>, Daniel Leidert <daniel.leidert@wgdd.de>", >- _("\nIf you know of anyone missing from this list,\nplease let us know via <bluefish@bluefish.openoffice.nl>."), >- _("\nThanks to all who helped making this software available."), >+ _("\nIf you know of anyone missing from this list,\nplease let us know at:"), >+ _("bluefish@bluefish.openoffice.nl <bluefish@bluefish.openoffice.nl>"), >+ _("\nThanks to all who helped make this software available.\n"), > NULL > }; >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 1071689
:
869698
|
869699
|
869700
|
869701
|
869702
|
869703
|
869704
|
869705
|
869706
|
869707
|
870179
| 870268