todo
来自「excel to html」· 代码 · 共 158 行
TXT
158 行
HIGH PRIORITY:*************** Review all the documentation for style errors and so on. PLEASE, ENGLISH SPEAKERS, HELP ME HERE!!!* Improve example of cole_recurse_tree() in examples/filesystem.c: include actual callback functions, not just NULLs.* Write tests for all calls of the API: Improve example/directory.c: missing some calls to test.* Call all the calls of the API in examples/demo.c.* Implement more API calls, like `stdio.h' ANSI C calls.* Fix the bugs listed in `BUGS' file!* Search for `FIXME' in the source code... and fix some =).MEDIUM:******** Improve tests, they must actually test the output of the public calls.* Investigate if it is possible to use `const' in static version variables.* Test cole_fopen() using wired filenames. ie "/", "//", "", etc. May be a function that check the filename could be written.* Check input arguments of each call of the API, returning an colerror if there are an error.* Say in the documentation that many other files can be `Structured Storage' files too.* May be in cole 3.x, create a double char type in order to handle the complete directory and file names.* Investigate how to avoid content of the structures COLEFILE and so on be documented in the api document (their must be documented only in the internal document).* Investigate how to force that calls begining with `_' to be in documentation (their will be in internals).* Make api section is before internals section in generated documentation, but COLEFS, COLEFILE, COLEDIR and COLEDIRENT must be documented in internals, not in api.* Make cole fork safe.* Make reentrant safe.* Review Martin Schwartz mail: ---QUOTE--- It might be helpful to you to have a look at the perl 5 (Ole::Storage) release file "Storage.pm" method "ole_head", giving some additional info about big- and smallblocksize (offset 0x1e, 0x20) as well as about Extended Block Depot for very large files (offset 0x44, 0x48). And, sorry for my screwed up namegiving... ---END QUOTE--- The Extended Block Depot is implemented now, but bigblocksize and smallblocksize are not implented yet.* Really use the results of the configure guesses, with #ifdef HAVE_x in code.* Make it compile using DJGPP and Borland C (we may need a custom Makefile and a custom config.h).* Use void `swab(const void *from, void *to, size_t n);' (in fil_sread* calls) if present, for performance, in support.c.* Replace cole_direntry_getday[12] and cole_direntry_getsec[12] calls with another calls that return something useful.* Divide the RPM in cole and cole-devel packages (may be it's not necessary, because cole package is not much big).* cole.spec is regenerated while configuring, avoid that. (UPDATE: may be is impossible to avoid that =().NOT URGENT:************ Use some package to discover uninitializated memory, use some profile package, etc.* Support cross compiling (don't even know what this exactly means! =) ). UPDATE: seems that cross compiling it is just useful for compilers... =)* Use zlib to support compressed files.******************PRE COLE 2.x TODO:******************MEDIUM:******** Check: + ends () doesn't should be called more than once + if OLEdecode or OLEcode fails, then the stream tree is never freed.* Rewrite olecode.c to use `test(..,..)' instead of `test_exitf(..,..,dummy())'.* See the posiblity to convert some #defines functions to real functions, to get objects of smaller size.* See mark `/* FIXME MARK 2 */' in oledecod.c.* Instead using assert, use assert_return or something like that: the purpose is not abort, but return a error code (like 19, like xls2xml).* Check all pointer arguments checked != NULL using assert, as well other parameters must be correct, use assert or assert_return (see up).* Review error checking system (that means, does all possible errors can be captured?)* Add property sets read and create functions (as implemented in LAOLA): Invent some functions to construct an pps_entry * tree. one could be: int add_stream (char * stream_name, char * filename, pps_entry * tree) That function would open filename, calculate its size, and write it tree as brother. other could be: int add_directory (char * dir_name, pps_entry * tree)* Function generate_real_file needs to be checked if it is all correct there. See /* FIXME MARK 3 */ in olecod.c.NOT URGENT:************ Check that list->size not have been used as size of file, because it's the size of the list.* Change #defines func(..) and its calls in order to make parameters between parentesis. Don't broke anything.* Indent all files. Use indent. Check they look ok in 80 columns.* Change all 4's to sizeof(U32). DANGER: take care don't brake *anything*.* Insert all streams in sbfile, SDepot, BDepot and Input and *after* recalculate all sizes and blocks and all that stuff in OLEcode, instead do it each time we insert one stream (this could lead great performance).
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?