Bug tracking string is now kinda C++
This commit is contained in:
@ -71,7 +71,6 @@ BrowserWindow *a_Bw_new(void)
|
||||
bw->Docs = dList_new(8);
|
||||
|
||||
bw->num_page_bugs = 0;
|
||||
bw->page_bugs = dStr_new("");
|
||||
|
||||
bw->zoom = 1.0;
|
||||
|
||||
@ -107,7 +106,6 @@ BrowserWindow::~BrowserWindow()
|
||||
|
||||
delete this->meta_refresh_url;
|
||||
|
||||
dStr_free(this->page_bugs, 1);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -68,7 +68,7 @@ struct BrowserWindow {
|
||||
|
||||
/** HTML-bugs detected at parse time */
|
||||
int num_page_bugs;
|
||||
Dstr *page_bugs;
|
||||
std::string page_bugs;
|
||||
|
||||
/* Zoom factor */
|
||||
float zoom;
|
||||
|
22
src/html.cc
22
src/html.cc
@ -24,6 +24,9 @@
|
||||
#include <errno.h>
|
||||
|
||||
#include <string>
|
||||
#include <sstream>
|
||||
|
||||
#include <Alepha/AutoRAII.h>
|
||||
|
||||
#include "bw.hh" /* for BrowserWindow */
|
||||
#include "msg.hh"
|
||||
@ -156,14 +159,21 @@ void DilloHtml::bugMessage(const char *format, ... )
|
||||
{
|
||||
va_list argp;
|
||||
|
||||
std::ostringstream oss;
|
||||
|
||||
if (bw->num_page_bugs)
|
||||
dStr_append_c(bw->page_bugs, '\n');
|
||||
dStr_sprintfa(bw->page_bugs,
|
||||
"HTML warning: line %d, ",
|
||||
getCurrLineNumber());
|
||||
bw->page_bugs+= '\n';
|
||||
oss << "HTML warning: line %d, " << getCurrLineNumber();
|
||||
bw->page_bugs+= oss.str();
|
||||
va_start(argp, format);
|
||||
dStr_vsprintfa(bw->page_bugs, format, argp);
|
||||
auto bugs= Alepha::AutoRAII
|
||||
{
|
||||
[]{ return dStr_new( "" ); },
|
||||
[]( auto s ){ dStr_free( s, true ); },
|
||||
};
|
||||
dStr_vsprintfa(bugs, format, argp);
|
||||
va_end(argp);
|
||||
bw->page_bugs+= bugs->str;
|
||||
a_UIcmd_set_bug_prog(bw, ++bw->num_page_bugs);
|
||||
}
|
||||
|
||||
@ -527,7 +537,7 @@ void DilloHtml::initDw()
|
||||
dw = stack->getRef(0)->textblock = new Textblock (prefs.limit_text_width);
|
||||
|
||||
bw->num_page_bugs = 0;
|
||||
dStr_truncate(bw->page_bugs, 0);
|
||||
bw->page_bugs.clear();
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1344,7 +1344,7 @@ void a_UIcmd_view_page_bugs(void *vbw)
|
||||
BrowserWindow *bw = (BrowserWindow*)vbw;
|
||||
|
||||
if (bw->num_page_bugs > 0) {
|
||||
a_Dialog_text_window("Flenser: Detected HTML errors", bw->page_bugs->str);
|
||||
a_Dialog_text_window("Flenser: Detected HTML errors", bw->page_bugs.c_str());
|
||||
} else {
|
||||
a_Dialog_msg("Flenser: Good HTML!", "No HTML errors found while parsing!");
|
||||
}
|
||||
|
Reference in New Issue
Block a user