mirror of
https://github.com/pi-hole/FTL.git
synced 2025-12-20 05:38:23 +00:00
Merge pull request #2702 from rrobgill/discard_bom
gravity update - silently discard unicode BOM if present
This commit is contained in:
@@ -272,6 +272,18 @@ int gravity_parseList(const char *infile, const char *outfile, const char *adlis
|
|||||||
unsigned int exact_domains = 0, abp_domains = 0, invalid_domains = 0;
|
unsigned int exact_domains = 0, abp_domains = 0, invalid_domains = 0;
|
||||||
while((read = getline(&line, &len, fpin)) != -1)
|
while((read = getline(&line, &len, fpin)) != -1)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
// Handle UTF-8 BOM (Byte Order Mark) if present at start of file
|
||||||
|
if (read >= 3 &&
|
||||||
|
(unsigned char)line[0] == 0xEF &&
|
||||||
|
(unsigned char)line[1] == 0xBB &&
|
||||||
|
(unsigned char)line[2] == 0xBF)
|
||||||
|
{
|
||||||
|
// Shift line contents left by 3 bytes to remove BOM
|
||||||
|
memmove(line, line + 3, read - 3);
|
||||||
|
read -= 3;
|
||||||
|
}
|
||||||
|
|
||||||
// Update total read bytes
|
// Update total read bytes
|
||||||
total_read += read;
|
total_read += read;
|
||||||
lineno++;
|
lineno++;
|
||||||
|
|||||||
Reference in New Issue
Block a user