Age | Commit message (Collapse) | Author |
|
|
|
|
|
- Fix a theoretical issue where "found" can overflow and return a zero exit
status when there are many feeds found.
- When there are no RSS/Atom feeds this is not an error, so return 0.
- Style: change unsigned int to int.
|
|
|
|
The previous style was not bold:
<b><a href="">some link</a></b>
The following link is now bold:
<a href=""><b>some link</b></a>
|
|
This improves output with Dillo, w3m and possibly other simple browsers.
- Dillo has a bug where it resets its block-style after <h2> when it is inside
<pre>. Then it ignores newlines (inside <pre>) and the links are inlined.
- w3m does not have a (line)margin for h2.
|
|
Optimize for the common-case: assuming ASCII.
The input is assumed to be valid UTF-8 input (output of sfeed).
This saves 2 function calls for determining the width of a single ASCII
character, which of course is 1.
Ranges:
< 32 are control-characters and are skipped.
< 127 is typical ASCII and is 1 column wide.
>= 127 is the normal path (control-character and multi-byte UTF-8).
Tested on OpenBSD and Linux with various compilers (clang, gcc, pcc and tcc).
On OpenBSD and Linux glibc much improvement. On Linux musl (almost) no change.
In a common-case upto 40% performance improvement.
In the worst-case negligible performance degration (<1%).
|
|
|
|
noticed on DragonFlyBSD where it prints a warning when moving the file from
/tmp.
To reproduce it:
touch /tmp/file
mv /tmp/file ~/
On other systems this would not print a warning, but it would preserve the
group permissions etc.
|
|
Also use a more portable date +'%s' (remove -j).
NOTE though: date +'%s' is not POSIX, but it is supported in most cases.
|
|
|
|
- sfeedrc.5: use the same order as executed in the sfeed_update file.
- sfeedrc.5: reference iconv and curl, which are option, but used by default.
- sfeedrc.5: use a .Sh VARIABLES section for sfeedpath and maxjobs.
- sfeed_update.1: split config format-specific documentation and reference it.
- just use the term "url" instead of "uri".
- shorten some texts, increasing readability.
|
|
|
|
|
|
|
|
|
|
- return -1 for invalid XML entities.
- separate between NUL (�) and invalid entities: although both are
unwanted in sfeed.
- validate the number range more strictly and don't wrap to unsigned.
entities lik: "&#-1;" are handled as invalid now. "&#;" is also invalid
instead of the same as "�".
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This nested format is used by Mozilla Thunderbird:
<outline title="">
<outline type="rss" title="" text="" xmlUrl=""/>
</outline>
other tests:
- newsboat -e uses the title attribute, not text.
- rss2email 3.x, r2e opmlexport uses type, text and xmlUrl (correct).
|
|
- set type="rss", this is mandatory for OPML2 (although we use OPML v1).
This fixes importing OPML with Mozilla Thunderbird.
other:
- Do not set the optional htmlUrl. This was (ab)used for the baseurl.
- awk: set FS using the awk -F option (no need for OFS here).
- awk: remove forced C locale.
|
|
Named entities are case-sensitive and in XML lower-case.
(In HTML some of these are valid. Although &APOS; is invalid there too).
References:
4.6 Predefined entities: https://www.w3.org/TR/xml/#sec-predefined-ent
In the definition of "match": https://www.w3.org/TR/xml/#dt-match
"No case folding is performed."
|
|
|
|
This could overflow / wrap the buffer.
Note: SIZE_MAX is defined in POSIX to atleast 65535.
On most platforms on 64-bit this is 0xffffffffffffffffUL bytes.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
minor consistency fix in sfeed_html.c comment
|
|
Use the same XML handlers names as the fields to improve readability a bit.
This is also consistent across all the programs using xml.c. Shorten the
variable names aswell.
|
|
|
|
|
|
|
|
|
|
- pledge(2) sooner.
- Don't use getenv when it has no arguments and reads only from stdin.
prefixpath is unused in that case.
- Check for path truncation or an encoding error. No need to format the same
path twice.
- Use a fixed feed structure, no need for memory allocation in this format
program.
- Remove "totalnew" of all feeds. It was unused.
|
|
|
|
|
|
|