about summary refs log tree commit diff stats
path: root/src/profanity.c
Commit message (Expand)AuthorAgeFilesLines
* Apply coding styleMichael Vetter2020-07-071-13/+13
* Revert "Apply coding style"Michael Vetter2020-07-071-23/+24
* Apply coding styleMichael Vetter2020-07-071-24/+23
* Remove prefs_free_string()Michael Vetter2020-07-021-2/+2
* Define lock in profanity.h as externMichael Vetter2020-04-171-0/+1
* Add -t theme optionMichael Vetter2020-03-241-7/+16
* Allow setting custom log file via -f FILENAMEMichael Vetter2020-02-211-5/+5
* Update my Copyright to 2020Michael Vetter2020-01-031-1/+1
* Add vim modelineMichael Vetter2019-11-131-0/+1
* Possibility to specify alternative config fileMichael Vetter2019-08-021-5/+5
* Add omemo_close functionMichael Vetter2019-07-041-0/+3
* Add myself to copyrightMichael Vetter2019-06-171-0/+1
* Load/destroy tray icons on init/shutdownJames Booth2016-04-181-1/+1
* Moved gtk specific code to tray.cJames Booth2016-04-181-20/+3
* Grouped tray icon initialisation codeJames Booth2016-04-171-11/+9
* Make tray icon configurable using /tray cmdDominik Heidler2016-04-161-2/+2
* Merge remote-tracking branch 'Dav1d23/master'James Booth2016-04-111-1/+37
|\
| * Re-introduce gtk_use booleanDavid2016-04-101-9/+20
| * libgtk is now optionalDavid2016-03-301-15/+17
| * This case was clearly not tested locally, so many failures here.David2016-03-131-1/+3
| * fix no gtk initDavid2016-03-131-5/+12
| * Merge branch 'tray_icon' into HEADDavid2016-03-121-0/+12
| |\
| | * Use a folder to add iconsDavid2016-03-071-0/+6
| | * Introduce Tray Icon for ProfanityDavid2016-03-061-0/+6
* | | Removed #AX_PREFIX_CONFIG_HJames Booth2016-03-311-14/+14
|/ /
s="n">x; r.set_value(address(r.value, space_base(r))); //? cout << "after absolutize: " << r.value << '\n'; //? 1 r.properties.push_back(pair<string, vector<string> >("raw", vector<string>())); assert(is_raw(r)); return r; } :(before "return result" following "reagent deref(reagent x)") result.properties.push_back(pair<string, vector<string> >("raw", vector<string>())); //:: fix 'get' :(scenario deref_sidesteps_default_space_in_get) recipe main [ # pretend pointer to container from outside 12:integer <- copy 34:literal 13:integer <- copy 35:literal # pretend array 1000:integer <- copy 5:literal # actual start of this function default-space:address:array:location <- copy 1000:literal 1:address:point <- copy 12:literal 9:integer/raw <- get 1:address:point/deref, 1:offset ] +mem: storing 35 in location 9 :(after "reagent tmp" following "case GET:") tmp.properties.push_back(pair<string, vector<string> >("raw", vector<string>())); //:: fix 'index' :(scenario deref_sidesteps_default_space_in_index) recipe main [ # pretend pointer to array from outside 12:integer <- copy 2:literal 13:integer <- copy 34:literal 14:integer <- copy 35:literal # pretend array 1000:integer <- copy 5:literal # actual start of this function default-space:address:array:location <- copy 1000:literal 1:address:array:integer <- copy 12:literal 9:integer/raw <- index 1:address:array:integer/deref, 1:literal ] +mem: storing 35 in location 9 :(after "reagent tmp" following "case INDEX:") tmp.properties.push_back(pair<string, vector<string> >("raw", vector<string>())); //:: helpers :(code) int space_base(const reagent& x) { return Current_routine->calls.top().default_space; } int address(int offset, int base) { if (base == 0) return offset; // raw //? cout << base << '\n'; //? 2 if (offset >= Memory[base]) { // todo: test raise << "location " << offset << " is out of bounds " << Memory[base] << '\n'; } return base+1 + offset; } :(after "void write_memory(reagent x, vector<int> data)") if (x.name == "default-space") { assert(data.size() == 1); Current_routine->calls.top().default_space = data[0]; //? cout << "AAA " << Current_routine->calls.top().default_space << '\n'; //? 1 return; } :(scenario get_default_space) recipe main [ default-space:address:array:location <- copy 10:literal 1:integer/raw <- copy default-space:address:array:location ] +mem: storing 10 in location 1 :(after "vector<int> read_memory(reagent x)") if (x.name == "default-space") { vector<int> result; result.push_back(Current_routine->calls.top().default_space); return result; }