Merge branch 'develop' into main
continuous-integration/drone/push Build is passing Details

This commit is contained in:
tastytea 2020-01-27 10:49:02 +01:00
commit 2b8e443da7
Signed by: tastytea
GPG Key ID: CFC39497F1B26E07
3 changed files with 19 additions and 7 deletions

View File

@ -1,7 +1,7 @@
{ {
"manifest_version": 2, "manifest_version": 2,
"name": "remwharead", "name": "remwharead",
"version": "0.4.1", "version": "0.5.0",
"description": "Integrates remwharead into your Browser.", "description": "Integrates remwharead into your Browser.",
"homepage_url": "https://schlomp.space/tastytea/remwharead", "homepage_url": "https://schlomp.space/tastytea/remwharead",

View File

@ -14,6 +14,8 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>. * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
// TODO: Rewrite this in understandable code.
#include <string> #include <string>
#include <iostream> #include <iostream>
#include <cstdint> #include <cstdint>
@ -30,7 +32,7 @@ using std::system;
string read_input(); string read_input();
void send_message(const string &message); void send_message(const string &message);
int launch(const string &args); int launch(const string &args);
string decode_args(const string &args); string decode_args(string args);
void replace_in_field(string &field); void replace_in_field(string &field);
string read_input() string read_input()
@ -80,9 +82,17 @@ int launch(const string &args)
return ret; return ret;
} }
string decode_args(const string &args) string decode_args(string args)
{ {
constexpr char separator{'\u001F'}; // UNIT SEPARATOR. { // The string we get is escaped.
size_t pos{0};
while ((pos = args.find(R"(\u001f)", pos)) != string::npos)
{
args.replace(pos, 6, "\u001f");
}
}
constexpr char separator{'\u001f'}; // UNIT SEPARATOR.
if (args[0] != separator) // Extension uses old method. if (args[0] != separator) // Extension uses old method.
{ {
return args; return args;
@ -112,6 +122,7 @@ void replace_in_field(string &field)
} }
} }
int main() int main()
{ {
const string args = read_input(); const string args = read_input();

View File

@ -7,12 +7,13 @@ const chkarchive = document.getElementById("chkarchive");
const btnadd = document.getElementById("btnadd"); const btnadd = document.getElementById("btnadd");
const msgstatus = document.getElementById("msgstatus"); const msgstatus = document.getElementById("msgstatus");
const msgerror = document.getElementById("msgerror"); const msgerror = document.getElementById("msgerror");
const separator = '\u001f';
function set_taburl(tabs) // Set taburl to URL of current tab. function set_taburl(tabs) // Set taburl to URL of current tab.
{ {
const tab = tabs[0]; const tab = tabs[0];
taburl = '\'' + tab.url + '\''; taburl = separator + tab.url + separator;
} }
function get_tags() // get tags from text input. function get_tags() // get tags from text input.
@ -20,7 +21,7 @@ function get_tags() // get tags from text input.
const tags = txttags.value; const tags = txttags.value;
if (tags != "") if (tags != "")
{ {
return "-t '" + tags + "' "; return separator + "-t " + tags;
} }
return ""; return "";
} }
@ -72,7 +73,7 @@ function add()
let archive = ""; let archive = "";
if (chkarchive.checked === false) if (chkarchive.checked === false)
{ {
archive = "--no-archive "; archive = separator + "--no-archive";
} }
const args = get_tags() + archive + taburl; const args = get_tags() + archive + taburl;
console.log(args); console.log(args);