Fossil

Timeline
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

91 check-ins using file src/zip.c version 4ad5063ab8

2022-02-23
12:33
Count overnesting as the fourth type of the footnote-related issues and report accordingly. check-in: ae297bb671 user: george tags: markdown-footnotes
09:45
Minor refactoring. Move the definition of <code>BLOB_APPEND_LITERAL()</code> macro from <code>markdown_html.c</code> to <code>blob.c</code> so that it could be used outside of <code>markdown_html.c</code>. Also rename it to lowercase for consistency with other API. Within <code>markdown.c</code> use that newly available macro instead of <code>blob_append_string()</code>. Within <code>markdown_html.c</code> use it for footnotes-relevant code. Other invocations of <code>BLOB_APPEND_LITERAL()</code> within <code>markdown_html.c</code> are left intact (they use an alias) in order to simplify the potential merge with the trunk. check-in: c8a8d0c94c user: george tags: markdown-footnotes
08:21
Minor refactoring. Move the definition of <code>BLOB_APPEND_BLOB()</code> macro from <code>markdown_html.c</code> to <code>blob.c</code> so that it could be used outside of <code>markdown_html.c</code>. Also rename it to <code>blob_appendb()</code> for consistency with <code>blob_appendf()</code> and other API. Within <code>markdown.c</code> use that newly available macro where appropriate. Within <code>markdown_html.c</code> use it for footnotes-relevant code. Other invocations of <code>BLOB_APPEND_BLOB()</code> within <code>markdown_html.c</code> are left intact (they use an alias) in order to simplify the potential merge with the trunk. check-in: 33a681ebee user: george tags: markdown-footnotes
07:36
Fix handling of user-provided classes for unreferenced, joined and overnested footnotes. In all these cases the tokens of user-provided classes are rendered as plain-text and no special classes are added anywhere. check-in: 875472a8b0 user: george tags: markdown-footnotes
2022-02-21
05:14
Add a comment for <code>append_footnote_upc()</code>. Also substitute a variable of zero value with just "0" constant. No functional changes. check-in: ae8a3dd5aa user: george tags: markdown-footnotes
04:29
Impose a limit on the depth of nesting of inline footnotes. Also add a few test cases: for depth limiting and HTML hijacking. check-in: f4ff013ace user: george tags: markdown-footnotes
2022-02-20
23:00
If there are issues with footnotes then set TH1 variable <var>$footnotes_issues_counters</var> to a space separated list of integers that count for "misref", "unref" and "joins". This eliminates the need for JavaScript for the case when a custom skin wants to [forum:/forumpost/119b0be29a2b096b|warn about issues with footnotes] in the header of a page.<br> Also fix counting of "joins": count the number of unique labels that have multiple definitions (and not the number of such definitions). check-in: 773cef5cf7 user: george tags: markdown-footnotes
2022-02-19
01:16
Parse inline footnotes even if a renderer does not define a callback for rendering of footnote markers. This seems more correct even though the current implementation of backlink processor does define such callback as an empty function. check-in: e06c12d176 user: george tags: markdown-footnotes
01:00
Handle some corner cases more thoroughly: dismiss empty footnotes, passthrough (more carefully) user-provided classlist if the token is not followed by a blank character or if a footnote's text consists just of such token and blank characters. Also simplify a little bit a few places inside of <code>is_footnote()</code> function. check-in: fe3157803f user: george tags: markdown-footnotes
2022-02-18
01:33
Add <code>--lint-footnotes</code> option to the <code>test-markdown-render</code> command. If this flag is given and footnotes in the input have issues, then print to <var>stderr</var> the counters of "misrefs", "strays" and "split-defs" and exit with error. This should partially address a concern [forum:/forumpost/119b0be29a2b096b|raised at the forum]. check-in: 1f525713ff user: george tags: markdown-footnotes
2022-02-17
22:09
If a footnote's text starts with a token of the special form then use this token to derive a set of CSS classes that are added to that footnote and its references. This enables users to style elements of a particular footnote provided that the administrator provisioned and documented some special CSS classes in a custum skin. Default skin does not provide any of such special classes which makes this feature an "opt-in". check-in: 92516ced8b user: george tags: markdown-footnotes
00:17
Clean-up and rephrase some comments. check-in: a62c876896 user: george tags: markdown-footnotes
2022-02-16
23:08
Make parsing slightly faster and fix a comment. No changes in functionality. check-in: a36dd09d17 user: george tags: markdown-footnotes
22:11
Include <code>REQUEST_URI</code> into footnotes' hyperlinks. This should make links work even if base href (in a page's header) is not consistent with the <code>REQUEST_URI</code>. If <code>FOOTNOTES_WITHOUT_URI</code> macro is defined while compiling <code>src/markdown_html.c</code> then bare "#fragment" hyperlinks (without <code>REQUEST_URI</code>) are generated. check-in: 2c1f8f3592 user: george tags: markdown-footnotes
2022-02-14
23:32
Minor code refactoring: rename a temporary variable and utilize <code>matching_bracket_offset()</code> one more time. No changes in functionality. check-in: 5b845a0790 user: george tags: markdown-footnotes
2022-02-13
19:29
Fix parsing of "free-standing" footnotes that was (slightly) broken by the previous check-in. check-in: 23c3e0b2a7 user: george tags: markdown-footnotes
2022-02-12
20:52
If markup is ambigous between a "span-bounded" footnote and a "free-standing" footnote followed by another footnote then interpret as the later case. check-in: b363a4dbe7 user: george tags: markdown-footnotes
2022-02-11
01:26
Fix parsing of a multiline definition of labeled footnote for the case when lines end with CR+LF. check-in: ea66d15cf3 user: george tags: markdown-footnotes
2022-02-10
23:00
Clean-up and polish relevant CSS and HTML's class names. Insure visual spacing between footnotes' markers so that numbers are distinguishable when multiple footnotes in a row are used. Factor out auxiliary decorations from HTML into the default CSS, to enable customization via skins. check-in: 2b1375abad user: george tags: markdown-footnotes
2022-02-09
22:59
Handle unreferenced footnotes. If a labeled footnote is defined but there are no references to it, then add a special item at the end of footnotes. This item includes a label and the text of the strayed footnote - both rendered verbatim via <tt>html_escape()</tt>. Default skin makes such items visible and easily distinguishable. The order of such items match the order in the underlying source code. check-in: ada55cd45a user: george tags: markdown-footnotes
20:09
Join duplicated footnotes slightly faster. Fix a comment about auxiliary <tt>cmp_footnote_id()</tt> function. check-in: 7f6a641808 user: george tags: markdown-footnotes
19:38
Fix a misuse of an unsigned integer in the <tt>blobReallocMalloc()</tt> which can lead to redundant memory reallocations. check-in: 92221aaa19 user: george tags: markdown-footnotes
19:29
Fix a bug in the <tt>blob_reserve()</tt> function that was introduced by [1243bf39996b8a]. The <i>current</i> mainline is not affected because this function is not used anywhere. However it was causing memory corruption on the 'markdown-footnotes' branch since it was employed in [544df852b2d9a1]. check-in: 7283ae6e12 user: george tags: markdown-footnotes
2022-02-08
14:09
An attempt to fix a "double free crash" from the previous check-in. check-in: 18c9d10368 user: george tags: markdown-footnotes
14:04
If several footnotes are defined with the same label then join them into a single footnote. Text from each definition becomes an item in the list. This solution makes such situations noticable for the usual case (when this is an oversight) but also not obtrusive for the rare cases (when this is intentional). The list is provided with a special class to enable styling via skin customization.<br><b>This check-in is known to cause crash, see the forthcoming check-in.</b> check-in: 544df852b2 user: george tags: markdown-footnotes
13:39
Add <tt>const</tt> qualifier to the arguments of the <tt>blob_compare()</tt> function. check-in: 2822b63b39 user: george tags: markdown-footnotes
2022-02-06
22:53
Handle misreferences more thoroughly. Implement support of footnotes-within-footnotes with (hopefully) proper crosslinking (that's where it's getting tricky). check-in: 1787f6df11 user: george tags: markdown-footnotes
2022-02-04
23:07
Handle misreferences: a reference to undefined footnote. check-in: 28e6a9cd13 user: george tags: markdown-footnotes
19:47
Minor code refactoring. check-in: 2636e2245e user: george tags: markdown-footnotes
19:24
Automatically render a horizontal rule before the list of footnotes. If desired a particular skin can hide it using CSS selector "hr.footnotes-separator". check-in: 6807b434a9 user: george tags: markdown-footnotes
19:08
Add file [/doc/markdown-footnotes/test/markdown-test3.md|test/markdown-test3.md] that is suggested as an accumulator of footnotes-specific test cases. check-in: fe9e6ff9eb user: george tags: markdown-footnotes
17:28
For rendering a numeric footnote mark enclose HTML tag "a" inside of tag "sup" (instead of the opposite) and format anchor's id using "noteref%s-%i-%s" template (instead of "noteref-%s%i-%s"). Add highlighting when hovering over a span-bounded footnotes. check-in: fb999972e4 user: george tags: markdown-footnotes
16:54
Fix documentation so that an example of a referenced footnote definition inside of the fenced code block is not recognized as a real footnote defenition. This demonstrates a subtle gotcha and a possible work-arround of it. check-in: 7229d0f588 user: george tags: markdown-footnotes
00:37
Switch to <tt>(^...)</tt> for inline footnotes. Implement span-specific footnotes. Add [/doc/markdown-footnotes/src/markdown.md#ftnts|documentation]. check-in: cae7a5d1ca user: george tags: markdown-footnotes
2022-02-02
17:50
Bug-fix: Do not loose referenced footnotes when inline footnotes are also used. check-in: a8f0f1e7ff user: george tags: markdown-footnotes
2022-02-01
20:12
Support multiline footnote definitions and inline footnotes via <tt>^[...]</tt> syntax (this syntax is not settled yet). Fix overall link support that was broken by [e3710ccd3a5a]. check-in: 78b7846b8e user: george tags: markdown-footnotes
2022-01-31
05:32
Update the makemake.tcl script. Closed-Leaf check-in: 771ab19439 user: florian tags: msvc-openssl-winxp
05:29
Keep the verbose output as it's helpful for debugging, and because Fossil build output is also very detailed. check-in: c62f663e19 user: florian tags: msvc-openssl-winxp
2022-01-30
17:38
Do not assume little-endian architecture within <tt>to_base26()</tt> function. check-in: 4b63b1ee55 user: george tags: markdown-footnotes
17:08
Add an "eye-candy": if a footnote's mark is followed then the corresponding back-reference is highlighted, if a footnote's back-reference is followed then highlight the corresponding footnote's mark. check-in: 50dcf92f85 user: george tags: markdown-footnotes
11:32
Reduce output verbosity, but still provide enough hints in case of an error. check-in: 7dcf497daa user: florian tags: msvc-openssl-winxp
11:26
Remove an incorrect comment: it's possible to edit the OpenSSL makefile, and it only rebuilds itself if the templates are updated. check-in: 87dcc045dd user: florian tags: msvc-openssl-winxp
2022-01-29
00:19
Decouple parsing and HTML-specific rendering. Add support for back references in the list of footnotes. WIP - inline and multiline footnotes are not yet implemented. check-in: e3710ccd3a user: george tags: markdown-footnotes
2022-01-27
19:45
Minor code clean-up of src/markdown.c: add a few 'const' specifiers, reduce the scope of temporary variables and simplify their names. check-in: b9393a4e64 user: george tags: markdown-footnotes
15:53
Change makemake.tcl accordingly for DMC (generated Makefile.dmc not tested). Closed-Leaf check-in: 9f208a13bc user: danield tags: pickhr-prototype
15:17
Fix makemake.tcl and Makefile.msc to build on Windows. check-in: 2d354a6e7f user: danield tags: pickhr-prototype
06:39
Create new branch named "msvc-warn2-fatal" check-in: 5e6484a5e5 user: larrybr tags: msvc-warn2-fatal
04:34
Fix an off by 1 bug in "win32_http_request()" which was causing POST request to fail on windows. (e.g. wikiedit preview or upload of a file on the chat) Problem appear in checkin [7a3bf55f5489f534] check-in: e4b49ce37d user: mgagnon tags: trunk
04:16
A potential fix for the Makefile.msc and Makefile.dmc for the missing pikchr prototype, as discussed in /chat. Cannot test locally. _Might_ be that the added block in makemake.tcl line 1441 can be removed. check-in: bc6bda98a1 user: stephan tags: pickhr-prototype
03:57
Make sure the pikchr() function has a prototype(). MSVC generates incorrect code (and does not give a warning) if the prototype is missing. check-in: a27b3364e3 user: drh tags: trunk
2022-01-26
18:22
Make sure stdin and stdout are set to binary mode in Windows for the "fossil http" command. check-in: be1c4d47f9 user: drh tags: trunk
17:28
For Windows debugging, then "fossil ui" or "fossil server" is launched with the --httptrace option, the temporary files used to start subprocesses are stored in the working directory and are not deleted after each request. check-in: 3d238187bb user: drh tags: trunk
14:50
Initial support for [forum:/forumthread/d752446a4f63f390|footnotes in Markdown]. <br>This is WIP: support of multiline notes and code clean-up are pending. check-in: ebce0f357e user: george tags: markdown-footnotes
14:36
Fix compiler warning of unused function for builds without OpenSSL. check-in: 2a563d60bf user: drh tags: trunk
14:33
One more compiler warning fix. check-in: 317c665ce6 user: drh tags: trunk
14:32
Fix "unused variable" compiler warnings when building without OpenSSL. check-in: c1350c8a44 user: drh tags: trunk
14:00
Check-in [acffc8f7858254eb] was causing "CGI content-length mismatch" errors on the main Fossil website (xinet.d->althttpd->Fossil). This check-in attempts to resolve the problem. (Edit:) *Not!* The error is still occurring, though at least now we have a better error message. The problem might have been in althttpd and fixed at [https://sqlite.org/althttpd/info/fded041a3e9ce9b0]. check-in: c5c7dd5ffb user: drh tags: trunk
13:34
Improved help-page for the "http" command. check-in: 42c4d045e1 user: drh tags: trunk
13:10
Updates to the change log. check-in: 076e7863c2 user: drh tags: trunk
07:41
Alternative to [b890451cfb], [b70557f690] and [acffc8f785] to fix the SSL_read() loops on Windows. Pending tests on non-Windows platforms. Closed-Leaf check-in: 95256636e4 user: florian tags: ssl-read-loops
2022-01-25
19:36
Corrected parsing of /json-mode POST data in TLS mode. Extended /json/wiki/preview to support a mimetype option. check-in: 7f5877e843 user: stephan tags: trunk
18:14
ssl_read_server() now returns 0 on read error and lets the higher-level code deal with the short read. This might resolve the issue under discussion in [forum:/forumpost/2f818850abb72719 | forum post 2f818850abb72719]. check-in: acffc8f785 user: stephan tags: trunk
17:44
Update the built-in SQLite to the latest 3.38.0 beta, for the purpose of beta testing SQLite. check-in: 605064e656 user: drh tags: trunk
2022-01-24
08:42
/chat: added optional 'raw' URL argument to specify that the xmsg text should be returned as-is instead of HTML-izing it. This is not used by /chat but is to support Brad Harder's standalone curses-based /chat client (and similar ones). check-in: 4359f4b573 user: stephan tags: trunk
08:27
Simplified version of the previous patch which also catches SSL_read() errors on Windows. check-in: b70557f690 user: stephan tags: trunk
08:23
Preliminary workaround for Windows-specific SSL_read() behavior described in [forum:/forumpost/2f818850abb72719 | forum post 2f818850abb72719]. Patch tested by Florian (Windows) and myself (Linux). check-in: b890451cfb user: stephan tags: trunk
06:54
Replaced the "manual" TLS EOF tracking with BIO_eof(), analog to how is done in althttpd. check-in: 06e300e5bd user: stephan tags: trunk
2022-01-23
20:11
Diff algorithm is slightly faster and does a better job of dealing with indentation changes in code. See [forum:/forumpost/7631656a2823338a|forum thread 7631656a2823338a]. check-in: 1cb182ac18 user: drh tags: trunk
19:57
Add a heuristic to the diff generator that helps it do a better job of identifying differences in C code that result from a change in indentation level. Closed-Leaf check-in: 8cd73dda3d user: drh tags: diff-improvement
12:52
Fix bullets in wsl_caveats.wiki check-in: ea6b2d3e86 user: larrybr tags: trunk
11:29
Additional alignment debugging information output for "fossil diff --debug". check-in: 9aaefcfd0a user: drh tags: diff-improvement
09:16
Another follow-up to commits [85cfdd192a] and [6eeb7ec10e]: In the document to explain how Fossil reads environment variables to customize its behavior, do not mention how Fossil writes environment variables to customize the behavior of CGI programs, as that seems off-topic and confusing. check-in: c7abbe1ee6 user: florian tags: trunk
04:12
When trying to do an alignment of large blocks, first try an LCS on the same block using an ignore-whitespace comparison. If a large LCS is found, use that to subdivide the problem. Otherwise, continue with the usual divide-and-conquer technique. check-in: c311efef07 user: drh tags: diff-improvement
00:31
Approximately a 5x performance increase for diff with the -w (ignore whitespace) option. check-in: fbdbc09b40 user: drh tags: diff-improvement
2022-01-22
22:37
Remove expired link in userlinks.wiki check-in: 1a370bc3d0 user: larrybr tags: trunk
21:46
Link wsl_caveats.wiki into "Links For Fossil Users" check-in: 70ca1ce4d2 user: larrybr tags: trunk
18:02
Restore "const" before "DLine*" where possible in the diff generator. And even add some new instances of "const". check-in: cf69ac4e39 user: drh tags: diff-improvement
17:50
Fix the computation of DLink.nw for the case of the -w (no whitespace) option for diff. check-in: 44b6f12845 user: drh tags: diff-improvement
17:11
Add the Dline.nw field. Use it as a cache of the number of characters on a line with leading and trailing whitespace removed. check-in: f6112b93e9 user: drh tags: diff-improvement
13:49
Enhance the DLine.indent field so that it is always initialized to the number of space and control characters at the beginning of the line. check-in: 2dad4158db user: drh tags: diff-improvement
2022-01-21
20:34
Merge from trunk check-in: 8d78edddf7 user: george tags: search-terms-highlighting
20:24
Merge from trunk check-in: 9094def2b9 user: george tags: rptview-submenu-paralink
20:13
Merge from trunk check-in: 5c0515e20c user: george tags: wcontent-subsets
19:58
Merge from trunk check-in: 6721c654a9 user: george tags: th1-doc-vars
11:38
Fix the previous check-in to list environment variables used by the CGI Server Extensions feature in the correct place. check-in: 6eeb7ec10e user: florian tags: trunk
11:16
Defer output of status messages until relevant. Remove unnecessary FOR command variable expansions. check-in: b2655b9c4d user: florian tags: msvc-openssl-winxp
06:49
Forward XPCFLAGS and XPLDFLAGS to the OpenSSL build process to fix Windows XP builds with MSVC. This affects builds with FOSSIL_ENABLE_WINXP=1 and FOSSIL_BUILD_SSL=1. XPLDFLAGS is only relevant if FOSSIL_DYNAMIC_BUILD=1 also set, and is applied in a post-build step to work around the difficulties to append (MSVC) linker flags to the OpenSSL defaults. NOTE: Pending more tests, and back-porting to tools/makemake.tcl. check-in: b9d40d68dc user: florian tags: msvc-openssl-winxp
06:12
Add a few environment variables mentioned in recent check-in comments to the documentation. check-in: 85cfdd192a user: florian tags: trunk
2022-01-20
21:43
The test-httpmsg command does not need to open a repository. check-in: b145f19df5 user: drh tags: trunk
13:17
Add SERVER_SOFTWARE to the set of CGI parameters emitted by /ext check-in: a9a1bd84d8 user: drh tags: trunk
04:48
Per a /chat discussion in December, no longer "sterilize" manifests saved in zip/tar exports, as that changes their hash for client-side validation purposes and there is little risk of such exports being re-imported into a fossil repo. check-in: 722c248d53 user: stephan tags: trunk