Commit Graph

42 Commits

Author SHA1 Message Date
Émilie Feral
77304040ad [ion] Storage: fix crash due to wrong assertion
Python tries to import files without extension, it should not crash but
return an empty Record.
2019-09-02 16:55:39 +02:00
Léa Saviot
5235f74852 [ion/storage] Memoize last retrieved record
Faster Graph navigation
2019-08-30 10:47:15 +02:00
Léa Saviot
380ac52cd8 [ion/crc32] crc32Byte and crc32Word 2019-04-25 17:11:06 +02:00
Émilie Feral
58f9a59d6e [ion] Move Storage extensions declaration in Storage class 2019-04-12 15:16:52 +02:00
Émilie Feral
adc30a8dcd [ion] Add Macro to log the storage content 2019-04-12 15:16:52 +02:00
Léa Saviot
ccc1d51634 [ion/storage] fix use of unicode method 2019-04-12 15:16:51 +02:00
Léa Saviot
784381bd33 [unicode] Use unicode when dealing with chars - Part 1 2019-04-12 15:16:51 +02:00
Émilie Feral
66fe9baa7d [ion] Storage: clean implementation (do not re-code strlen) 2019-01-23 16:14:34 +01:00
Léa Saviot
34b22298c4 [ion/storage] Add assertion on dot in record name 2019-01-10 11:42:04 +01:00
Léa Saviot
de339c44ae [apps] Handle StorageFunction::m_color unaligned read on emscripten 2018-12-12 17:49:51 +01:00
Émilie Feral
0a9437e8dc [ion] Storage: add a method destroyAllRecords 2018-11-23 12:04:10 +01:00
Émilie Feral
34e2524a83 [ion] Storage: use strncmp instead of strcmp
When building with -fsanitize=address, strcmp is wrapped in a version
that returns only +1, -1 or 0.
2018-11-23 12:04:09 +01:00
Léa Saviot
0670057f90 [apps/graph] Destroy variable record with same name when renaming func 2018-11-23 12:04:06 +01:00
Léa Saviot
91d6955ddf [apps] The apps displays a warning when storage is full 2018-11-23 12:04:04 +01:00
Léa Saviot
9bfaed583d [apps/escher/ion] Remove Graph memoized models on storage change 2018-11-23 12:04:03 +01:00
Léa Saviot
38f3c5b16d [ion] Storage delegate gets notified of storage changes 2018-11-23 12:04:03 +01:00
Léa Saviot
34f5f0262b [ion] Return just after destroying the record, do not finish the scan 2018-11-23 12:04:03 +01:00
Léa Saviot
d869be7782 [apps/ion] Escapes cases when records/ strings are null 2018-11-23 12:04:01 +01:00
Léa Saviot
2442627e3c [apps] Remove attributes from StorageExpressionModel and derivates 2018-11-23 12:04:00 +01:00
Léa Saviot
dfe573c66e [ion/storage] Handle nullptr name when looking for a record 2018-11-23 12:04:00 +01:00
Léa Saviot
354b6e9c72 [apps] First attempt at bridging Funciton app with the shared storage 2018-11-23 12:04:00 +01:00
Léa Saviot
1830070a95 [ion] Method to destroy all records with given extension in Storage 2018-11-23 12:03:59 +01:00
Léa Saviot
5a5deedb84 [ion] Coding style of static functions in Storage 2018-11-23 12:03:59 +01:00
Léa Saviot
4465cb48f6 [poincare] Use strcmp instead of strncmp 2018-11-23 12:03:59 +01:00
Léa Saviot
91774aff83 [poincare] Escape case in Storage::destroyRecord 2018-11-23 12:03:59 +01:00
Léa Saviot
f71773bb8d [ion] Fix Storage:fullNameCompliant 2018-11-23 12:03:59 +01:00
Léa Saviot
1fe6881171 [ion] Fix coputation of Record name crc32 2018-11-23 12:03:59 +01:00
Léa Saviot
868f17c1c7 [ion] Add method implementation in Storage 2018-11-23 12:03:58 +01:00
Léa Saviot
52a21198a4 [apps/ion] Use the new storage API 2018-11-23 12:03:58 +01:00
Léa Saviot
a4868c8b09 [poincare] Ion::Storage handles fullnames and basenames with extensions 2018-11-23 12:03:58 +01:00
Émilie Feral
9a1ecec322 [ion] Storage: fix crc32 2018-09-26 16:53:55 +02:00
Émilie Feral
eadc493f48 [ion] Storage: fix regex describing compliant names 2018-09-21 17:13:12 +02:00
Émilie Feral
08077cb141 [ion] Storage: make Storage::nameCompliant less restrictive (accepts
.*\.[a-z]+). But Script::nameCompliant is stricted: [a-z_0-9.]*
2018-09-13 11:33:15 +02:00
Émilie Feral
db3cd16128 [ion] Storage: get rid of dynamic allocation 2018-09-11 17:03:04 +02:00
Émilie Feral
0bc2594489 [ion] Storage: deferencing nullptr? 2018-05-15 11:02:35 +02:00
Émilie Feral
235ec73e8e [emscripten] Fix alignment issue
Emscripten expects 32 and 16-bit memory accesses to be aligned.
2018-04-18 11:20:39 +02:00
Romain Goyet
2f1ebf7310 [emscripten] Work around alignment issues
Emscripten expects 32 and 16-bit memory accesses to be aligned.
This happens automatically most of the time, but in the case of our
Storage class, where we happen to read uint16_t out of a char array,
memory accesses might not be aligned. In that case, we rebuild the
uint16_t manually out of two bytes.
2018-04-18 10:04:18 +02:00
Romain Goyet
628992680b [ion] Ion::Storage is not a global variable anymore 2018-04-10 15:09:30 +02:00
Émilie Feral
f1ddf1dbf4 Valgrind: uninitialized value, memory leak 2018-03-28 10:02:09 +02:00
Émilie Feral
845fc7c979 [ion] Typo: NoEnough -> NotEnough 2018-03-22 14:01:38 +01:00
Émilie Feral
36e6851c21 [ion] Storage: change rule on record name compliance 2018-03-22 14:01:38 +01:00
Émilie Feral
b0ede47d55 [ion] Change Storage design (former kallax) 2018-03-22 14:01:38 +01:00