pike issueshttps://git.lysator.liu.se/pikelang/pike/-/issues2020-03-01T15:12:57Zhttps://git.lysator.liu.se/pikelang/pike/-/issues/4897Overzealous compile time type check2020-03-01T15:12:57ZPeter BortasOverzealous compile time type checkImported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=4897
Reported by Martin Stjernholm <mast@roxen.com>
Consider the following program:
```
constant c = (["x": (["y": ({1,2,3})])]);
int main()
{
werror ("%O\n", ...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=4897
Reported by Martin Stjernholm <mast@roxen.com>
Consider the following program:
```
constant c = (["x": (["y": ({1,2,3})])]);
int main()
{
werror ("%O\n", c["x"] && equal (c["x"]["y"], ({1,2,3})));
}
```
It works and writes out "1". Now, if the constant mapping c is replaced with an empty one, it doesn't even compile:
```
foo.pike:4:Indexing on illegal type.
foo.pike:4:Got : string(0..255).
```
The compiler could perhaps optimize the werror expression to 0, but it should compile it even if the mapping happens to be empty. Probably another problem due to an overspecified implied type for constants.Pike 7.8Henrik (Grubba) GrubbströmHenrik (Grubba) Grubbströmhttps://git.lysator.liu.se/pikelang/pike/-/issues/4934pango items are listed as separate functions2020-03-01T15:13:13ZPeter Bortaspango items are listed as separate functionsImported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=4934
Reference: http://pike.ida.liu.se/generated/manual/modref/ex/predef_3A_3A/GTK2/Pango.AttrList.html
Reported by yvan vander sanden <yvan@youngmusic.org>
On the pike ...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=4934
Reference: http://pike.ida.liu.se/generated/manual/modref/ex/predef_3A_3A/GTK2/Pango.AttrList.html
Reported by yvan vander sanden <yvan@youngmusic.org>
On the pike website (module reference), pango functions are listed as GTK2.Pango.Function.
Example: GTK2.Pango.FontDescription()
in the GTK2 test files that come with the source it's:
```
object font_desc= Pango.FontDescription("monospace 10");
```
(which could be right if GTK2 is imported, but that's not the case)
But both are wrong, since it's actually:
GTK2.PangoFontDescription()
Same goes for all other pango functions/objects/programs. It might be a timesaver for new users like me to have the correct information on this on all places :-)
regards,
yvan vander sandenPike 7.8Henrik (Grubba) GrubbströmHenrik (Grubba) Grubbströmhttps://git.lysator.liu.se/pikelang/pike/-/issues/7664"Parent lost, cannot clone program." error in a complex Pike program2016-03-17T12:11:00ZPeter Bortas"Parent lost, cannot clone program." error in a complex Pike programImported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=7664
Reported by Per Cederqvist <ceder@lysator.liu.se>
I have a program (under NDA, so I cannot show it to you) that is 6244
lines long, consisting of 10 .pmod files and ...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=7664
Reported by Per Cederqvist <ceder@lysator.liu.se>
I have a program (under NDA, so I cannot show it to you) that is 6244
lines long, consisting of 10 .pmod files and one .pike file. Actually,
it includes even more Pike modules.
When run, it will after some time print this error message and exit:
Parent lost, cannot clone program.
There is also a backtrace.
```
I've been able to create a minimal testcase that reproduces my issue.
This is a set of just 5 files, for a total of 54 lines. Admittedly,
the test program looks strange with a lot of unused functions and methods;
in the real program they are actually used and do useful things.
```
When I run the minimized and sanitized file, I get this output:
```
$ pike main.pike
Parent lost, cannot clone program.
State.pmod:8: /home/cederp/sanitized/State.read_file()
main.pike:4: /main()->main()
$
```
I'll attach a shar archive of my test programs. Unpack it in en empty
directory.
This reproduces with a fresh Pike 8.0.182 compiled from source on
Ubuntu 14.04. (It also reproduces on a modified Pike 7.8).Pike 8.0Henrik (Grubba) GrubbströmHenrik (Grubba) Grubbströmhttps://git.lysator.liu.se/pikelang/pike/-/issues/1469parse_dtd function in XML parser loses extra argument2009-04-16T14:11:39ZPeter Bortasparse_dtd function in XML parser loses extra argumentImported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=1469
Reported by @marcus
If parse_dtd detects a PE reference, and the callback doesn't provide a
value of the PE, the error is deliviered to the callback with incorrect
e...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=1469
Reported by @marcus
If parse_dtd detects a PE reference, and the callback doesn't provide a
value of the PE, the error is deliviered to the callback with incorrect
extra arguments (note how the 3 turns into "error"):
```
Pike v7.2 release 26 running Hilfe v2.0 (Incremental Pike Frontend)
> Parser.XML.Simple()->parse_dtd("%hej;\n", lambda(mixed ...
args){werror("%O\n", args);}, 1, 2, 3);
({ /* 8 elements */
"%",
"hej",
([ /* 1 element */
"in_attribute":0
]),
0,
([ /* 1 element */
"location":5
]),
1,
2,
3
})
({ /* 8 elements */
"error",
0,
0,
"No such entity.",
([ /* 1 element */
"location":5
]),
1,
2,
"error"
})
/home/marcus/pike/src/modules/spider/xml.c:2233: Fatal error:
Stack underflow.
Attempting to dump backlog (may fail)...
Backtrace at time of fatal:
/home/marcus/pike/lib/modules/Parser.pmod/XML.pmod/Simple.pike:
parse_dtd("%hej;\n",__lambda_65625_0,1,2,"Backtrace at time of
fatal:\n")
-:1: ___Foo4711()
/home/marcus/pike/lib/modules/Tools.pmod/Hilfe.pmod:103:
do_evaluate("mixed ___Foo4711() { return
(mixed)(Parser.XML.Simple()->pars
e_dtd(\"%hej;\\n\", lambda(mixed ... args){werror(\"%O\\n\", args);},
1, 2
, 3));
}\n",1)
/home/marcus/pike/lib/modules/Tools.pmod/Hilfe.pmod:603:
parse_statement("Parser.XML.Simple()->parse_dtd(\"%hej;\\n\",
lambda(mixed
... args){werror(\"%O\\n\", args);}, 1, 2,
3);")
/home/marcus/pike/lib/modules/Tools.pmod/Hilfe.pmod:381: do_parse()
/home/marcus/pike/lib/modules/Tools.pmod/Hilfe.pmod:224:
add_buffer("Parser.XML.Simple()->parse_dtd(\"%hej;\\n\", lambda(mixed
...
args){werror(\"%O\\n\", args);}, 1, 2,
3);\n")
/home/marcus/pike/lib/modules/Tools.pmod/Hilfe.pmod:623:
add_input_line("Parser.XML.Simple()->parse_dtd(\"%hej;\\n\",
lambda(mixed
... args){werror(\"%O\\n\", args);}, 1, 2,
3);\n")
/home/marcus/pike/lib/modules/Tools.pmod/Hilfe.pmod:703: create()
Hilfe: StdinHilfe()
/home/marcus/pike/bin/hilfe:5: main(1,({"/home/marcus/pike/bin/hilfe"}))
make: *** [run_hilfe] Abort (core dumped)
```Pike 7.2https://git.lysator.liu.se/pikelang/pike/-/issues/837Parser.HTML crashes2009-04-16T14:11:39ZPeter BortasParser.HTML crashesImported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=837
Reported by Thomas Bopp, Uni-GH Paderborn <astra@upb.de>
When trying to parse my little html file the parser
crashes. The content of the file (index.html) seems
to ca...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=837
Reported by Thomas Bopp, Uni-GH Paderborn <astra@upb.de>
When trying to parse my little html file the parser
crashes. The content of the file (index.html) seems
to cause the problem.
I am attaching the filesPike 7.0https://git.lysator.liu.se/pikelang/pike/-/issues/1031Parser.HTML crashes on feed(0)2014-07-24T14:49:14ZPeter BortasParser.HTML crashes on feed(0)Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=1031
Reported by Thomas Bopp, Uni-GH Paderborn <astra@upb.de>
I tried just p->feed(0) in a testprogram and it did not crash, on
my large project I got the following:
```...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=1031
Reported by Thomas Bopp, Uni-GH Paderborn <astra@upb.de>
I tried just p->feed(0) in a testprogram and it did not crash, on
my large project I got the following:
```
Fatal error
at /home/peter/hack/newdeal/build/pike.sol2.5.1/build/../pike/src/modules/P
arser/html.c:1332
internal error: tail not found in feed (put_out_feed_range)
Attempting to dump backlog (may fail).
Parser.HTML: feed(0)
server/server.pike:116: read_configs()
```
It happens with my source xml file and there is no newline in the
last line of source.Pike 7.0Henrik (Grubba) GrubbströmHenrik (Grubba) Grubbströmhttps://git.lysator.liu.se/pikelang/pike/-/issues/8014Parser.HTML leaks stack.2017-06-14T12:57:46ZPeter BortasParser.HTML leaks stack.Imported from https://youtrack.roxen.com/issue/PIKE-14
Reported by @grubba
When a parser tag or container callback returns zero, there are some cases where the zero doesn't get popped from the stack.
This can cause the parser to run o...Imported from https://youtrack.roxen.com/issue/PIKE-14
Reported by @grubba
When a parser tag or container callback returns zero, there are some cases where the zero doesn't get popped from the stack.
This can cause the parser to run out of stack for large documents.https://git.lysator.liu.se/pikelang/pike/-/issues/705Parser.HTML makes Hilfe dump core.2009-04-16T14:11:39ZPeter BortasParser.HTML makes Hilfe dump core.Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=705
Reported by Martin Nilsson, IDA <nilsson@pike.ida.liu.se>
```
Pike v7.1 release 11 running Hilfe v2.0 (Incremental Pike Frontend)
> object p = Parser.HTML();
Result: ...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=705
Reported by Martin Nilsson, IDA <nilsson@pike.ida.liu.se>
```
Pike v7.1 release 11 running Hilfe v2.0 (Incremental Pike Frontend)
> object p = Parser.HTML();
Result: object
> p->_set_data_callback(lambda(mixed ... foo) { return; });
Result: object
> p->feed("<br>");
/net/lister/export/mast/7.1/src/modules/Parser/html.c:1304: Fatal error:
internal error: tail not found in feed (put_out_feed_range)
Attempting to dump backlog (may fail)...
Backtrace at time of fatal:
module.HTML: feed(0)
-:1: ___Foo4711()
/i/pike/7.1.11/lib/modules/Tools.pmod/Hilfe.pmod:103: do_evaluate("mixed
___Foo4711() { return (mixed)(p->feed(\"<br>\")); }\n",1)
/i/pike/7.1.11/lib/modules/Tools.pmod/Hilfe.pmod:585:
parse_statement("p->feed(\"<br>\");")
/i/pike/7.1.11/lib/modules/Tools.pmod/Hilfe.pmod:366: do_parse()
/i/pike/7.1.11/lib/modules/Tools.pmod/Hilfe.pmod:225:
add_buffer("p->feed(\"<br>\");\n")
/i/pike/7.1.11/lib/modules/Tools.pmod/Hilfe.pmod:605:
add_input_line("p->feed(\"<br>\");\n")
/i/pike/7.1.11/lib/modules/Tools.pmod/Hilfe.pmod:685: create()
Hilfe: StdinHilfe()
Abort (core dumped)
```Pike 7.2https://git.lysator.liu.se/pikelang/pike/-/issues/838Parser.HTML()->parse_tag_args failed to parse />2009-04-16T14:11:39ZPeter BortasParser.HTML()->parse_tag_args failed to parse />Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=838
Reported by Thomas Bopp, Uni-GH Paderborn <astra@upb.de>
tags like <td width="100"/> are resolved to:
([ width:"100/", ])Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=838
Reported by Thomas Bopp, Uni-GH Paderborn <astra@upb.de>
tags like <td width="100"/> are resolved to:
([ width:"100/", ])Pike 7.0https://git.lysator.liu.se/pikelang/pike/-/issues/1304Parser.HTML.quote_tags can dump core2009-04-16T14:11:39ZPeter BortasParser.HTML.quote_tags can dump coreImported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=1304
Reported by Martin Stjernholm <mast@roxen.com>
```
> Parser.HTML()->add_quote_tag("<!--","","")->quote_tags();
Fatal error at /home/mast/Pike/7.0/src/stralloc.c:1368...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=1304
Reported by Martin Stjernholm <mast@roxen.com>
```
> Parser.HTML()->add_quote_tag("<!--","","")->quote_tags();
Fatal error at /home/mast/Pike/7.0/src/stralloc.c:1368
string_slice, start = 0, len = -1, s->len = 1
Attempting to dump backlog (may fail).
Parser.HTML: quote_tags()
-:1: ___Foo4711()
/home/mast/Pike/7.0/lib/modules/Tools.pmod/Hilfe.pmod:91:
do_evaluate("mixed ___Foo4711() { return
(mixed)(Parser.HTML()->add_quote_tag(\"<!--\",\"\",\"\")->quote_tags());
}\n",1)
/home/mast/Pike/7.0/lib/modules/Tools.pmod/Hilfe.pmod:567:
parse_statement("Parser.HTML()->add_quote_tag(\"<!--\",\"\",\"\")->quote_tags();")
/home/mast/Pike/7.0/lib/modules/Tools.pmod/Hilfe.pmod:354: do_parse()
/home/mast/Pike/7.0/lib/modules/Tools.pmod/Hilfe.pmod:213:
add_buffer("Parser.HTML()->add_quote_tag(\"<!--\",\"\",\"\")->quote_tags();\n")
/home/mast/Pike/7.0/lib/modules/Tools.pmod/Hilfe.pmod:587:
add_input_line("Parser.HTML()->add_quote_tag(\"<!--\",\"\",\"\")->quote_tags();\n")
/home/mast/Pike/7.0/lib/modules/Tools.pmod/Hilfe.pmod:667: create()
Hilfe: StdinHilfe()
Abort (core dumped)
```Pike 7.0https://git.lysator.liu.se/pikelang/pike/-/issues/10107Parser.Markdown: Bogus output when using code fences2023-04-07T12:55:59ZHenrik (Grubba) GrubbströmParser.Markdown: Bogus output when using code fencesIssue copied from https://github.com/pikelang/Pike/issues/40
The following code
~~~pike
constant MD = #"
## Some Stuff
```html
<head></head>
```
Some text post code fence
";
int main(int argc, array(string) argv) {
string html = ...Issue copied from https://github.com/pikelang/Pike/issues/40
The following code
~~~pike
constant MD = #"
## Some Stuff
```html
<head></head>
```
Some text post code fence
";
int main(int argc, array(string) argv) {
string html = Parser.Markdown.parse(MD);
werror("%s", html);
}
~~~
generates the following output:
```html
<h2 id="some-stuff">Some Stuff</h2>
<pre><code class='lang-html'>
<head></head>
</code></pre>
<head></head><p>Some text post code fence</p>
```
But this is what's expected:
```html
<h2 id="some-stuff">Some Stuff</h2>
<pre><code class='lang-html'>
<head></head>
</code></pre>
<p>Some text post code fence</p>
```https://git.lysator.liu.se/pikelang/pike/-/issues/5792Parser.Tabular handles Stdio.File objects bad2010-11-11T11:11:49ZPeter BortasParser.Tabular handles Stdio.File objects badImported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=5792
Reported by Erik Dahl <erikd@roxen.com>
```
Pike v7.8 release 468 running Hilfe v3.5 (Incremental Pike Frontend)
> Parser.Tabular(Stdio.File("data.csv"), Stdio.File(...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=5792
Reported by Erik Dahl <erikd@roxen.com>
```
Pike v7.8 release 468 running Hilfe v3.5 (Incremental Pike Frontend)
> Parser.Tabular(Stdio.File("data.csv"), Stdio.File("format.csv"));
```
Does not work.
If you changes those into Stdio.FILE object everything is fine.
```
The line that contains this statement is the fishy one:
(input=Stdio.FILE())->assign(input);
```
These changes helped me (maybe there are better ways?):
```
diff -u Tabular.pike.orig Tabular.pike
--- Tabular.pike.orig 2010-11-11 01:02:43.000000000 +0100
+++ Tabular.pike 2010-11-11 01:13:47.000000000 +0100
@@ -666,8 +666,11 @@
input="";
if(stringp(input))
input=Stdio.FakeFile(input);
- if(!input->unread)
- (input=Stdio.FILE())->assign(input);
+ if(!input->unread) {
+ Stdio.FILE tmpf = Stdio.FILE();
+ tmpf->assign(input);
+ input = tmpf;
+ }
int started=0;
int lineno=0;
string beginend="Tabular description ";
```Pike 7.8Henrik (Grubba) GrubbströmHenrik (Grubba) Grubbströmhttps://git.lysator.liu.se/pikelang/pike/-/issues/3788Parser.XML.Tree namespaces wrong2011-02-08T13:34:54ZPeter BortasParser.XML.Tree namespaces wrongImported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=3788
Reported by Martin Nilsson, IDA <nilsson@pike.ida.liu.se>
Given that I understand the API correctly I think
```
> object x=Parser.XML.Tree.parse_input("<foo:x xmlns...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=3788
Reported by Martin Nilsson, IDA <nilsson@pike.ida.liu.se>
Given that I understand the API correctly I think
```
> object x=Parser.XML.Tree.parse_input("<foo:x xmlns:foo='uri://bar/'/>")[0];
> x->get_tag_name();
(1) Result: "x"
> x->get_short_name();
(2) Result: "x"
> x->get_full_name();
(3) Result: "foo:x"
```
should return
"x", "foo:x" and "uri://bar/x".Pike 7.8Henrik (Grubba) GrubbströmHenrik (Grubba) Grubbströmhttps://git.lysator.liu.se/pikelang/pike/-/issues/4576Parser.XML.Validating bails out with error for invalid content within nameles...2009-04-16T14:11:39ZPeter BortasParser.XML.Validating bails out with error for invalid content within nameless contextImported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=4576
Reported by Erik Forsberg, Opera Software <forsberg@opera.com>
Running this example script:
```
--begin example--
#!/usr/bin/env pike
class MyValidatingParser {
...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=4576
Reported by Erik Forsberg, Opera Software <forsberg@opera.com>
Running this example script:
```
--begin example--
#!/usr/bin/env pike
class MyValidatingParser {
inherit Parser.XML.Validating;
string get_external_entity(string sysid, string|void pubid,
int|void unparsed, mixed ... extra)
{
Standards.URI uri = Standards.URI(sysid);
if(uri->scheme == "http") {
Protocols.HTTP.Query q = Protocols.HTTP.get_url(uri);
if(q->status == 200)
return q->data();
}
return 0;
}
}
int main(int argc, array(string) argv)
{
string example = #"
<!DOCTYPE wml PUBLIC \"-//WAPFORUM//DTD WML 1.1//EN\"
\"http://www.wapforum.org/DTD/wml_1.1.xml\">
<wml>
<card id=\"menu\" title=\"title\">
not allowed here
</card>
</wml>";
int num_errors=0;
MyValidatingParser p = MyValidatingParser();
p->parse(example,
lambda(string kind, string name, mapping attributes,
array|string contents,mapping(string:mixed) info) {
if(kind=="error") {
werror("Error: %s, character position: %d\n",
contents, info->location);
num_errors++;
}
});
if(!num_errors) write("Validated ok.\n");
return num_errors;
}
--end example--
```
I get the following traceback:
```
--begin traceback--
sprintf: Wrong type for argument 2: expected string, got int.
/usr/local/pike/7.7.85/lib/modules/Parser.pmod/XML.pmod/
Validating.pike:262:
/main()->MyValidatingParser()->__lambda_65649_2_line_261("Invalid
content
for element
%s.",0)
/usr/local/pike/7.7.85/lib/modules/Parser.pmod/XML.pmod/
Validating.pike:391:
/main()->MyValidatingParser()->validate
("",0,0,"\n"
"not allowed here\n",mapping[1],/main()->__lambda_65637_0_line_33,
({}))
export/spare/pike/data/pikefarm/out_work/7.7/Pike/7.7/src/modules/Parser/
xml.cmod:943:
/main()->MyValidatingParser()->Context()->parse_xml
()
validate_xml.pike:3:
/main()->MyValidatingParser()->parse(/main()->MyValidatingParser()-
>Contex
t
())
/usr/local/pike/7.7.85/lib/modules/Parser.pmod/XML.pmod/
Validating.pike:444:
/main()->MyValidatingParser()->parse
("\n"
"<!DOCTYPE wml PUBLIC \"-//WAPFORUM//DTD WML 1.1//EN
\"\n"
" \"http://www.wapforum.org/DTD/wml_1.1.xml\">
\n"
"<wml>
\n"
"<card id=\"menu\" title=\"title\">
\n"
"not allowed here
\n"
"</"+[13],@0)
validate_xml.pike:40:
/main()->main(1,({"/home/forsberg/dev/validate_xml.pike"}))
--end traceback--
```Pike 7.8Henrik (Grubba) GrubbströmHenrik (Grubba) Grubbströmhttps://git.lysator.liu.se/pikelang/pike/-/issues/4651pass variable contains null character to postgres may cause SQL error2009-04-16T14:11:39ZPeter Bortaspass variable contains null character to postgres may cause SQL errorImported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=4651
Reported by Eiichiro ITANI, <emu@ceres.dti.ne.jp>
I'm not sure this is bug, or wrong usage of tag.
It cause SQL error to throw query postgres with array variable.
S...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=4651
Reported by Eiichiro ITANI, <emu@ceres.dti.ne.jp>
I'm not sure this is bug, or wrong usage of tag.
It cause SQL error to throw query postgres with array variable.
Suppose test.html contains these lines.
```
<emit source="sql" host="postgres-server"
query="SELECT :v AS v" bindings="v=form.v">
&_.v;
</emit>
```
Then, accessing
http://host/test.html?v=1&v=2
causes error
RXML run error: Query failed: ERROR: unterminated quoted string at or near
"'1"
LINE 1: SELECT '1
^
| <emit bindings="v=form.v" host="postgres-server" query="SELECT :v as v"
source="sql">
That error happened because null character directry passed to postgres server.
Of course, I should check and sanitize form.v to be plain string.
And I also noticed, accessing
http://host/test.html?v=abc%00def
this would make reply just "abc". I checked query log of postgres, and
found that query
as follows:
BEGIN
DECLARE _pikecursor CURSOR FOR SELECT 'abc' as v
FETCH 64 IN _pikecursor
FETCH 64 IN _pikecursor
COMMIT
Characters after null chopped.
Aren't they quoting problem of postgresql binding?Pike 7.4Henrik (Grubba) GrubbströmHenrik (Grubba) Grubbströmhttps://git.lysator.liu.se/pikelang/pike/-/issues/3548patches for Mysql 4.12009-04-16T14:11:39ZPeter Bortaspatches for Mysql 4.1Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=3548
Reported by Dan Nelson <dnelson_1901@yahoo.com>
MySQL 4.1 changed the returnvalues of most of their functions. Instead of
returning -1 on errors like previous versi...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=3548
Reported by Dan Nelson <dnelson_1901@yahoo.com>
MySQL 4.1 changed the returnvalues of most of their functions. Instead of
returning -1 on errors like previous version, it now returns 1. MySQL docs
say that any nonzero result is an error, but Pike's code checks for "< 0".
This causes weird behaviour when pike is linked with mysql-4.1 libraries.
Attached is a patch for 7.5; it should apply relatively cleanly to 7.2 &
7.4. I have also changed some char * to const char * because the
mysql_error() function now returns a const char *.Pike 7.6Henrik (Grubba) GrubbströmHenrik (Grubba) Grubbströmhttps://git.lysator.liu.se/pikelang/pike/-/issues/2820PATCH: Support for dynamic modules on MacOS X2009-04-16T14:11:39ZPeter BortasPATCH: Support for dynamic modules on MacOS XImported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=2820
Reported by @grubba
```
From: Bill Welliver <hww3@riverweb.com>
To: "pike@roxen.com" <pike@roxen.com>
Date: Tue, 5 Mar 2002 18:22:25 -0500
Subject: Revised patch for...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=2820
Reported by @grubba
```
From: Bill Welliver <hww3@riverweb.com>
To: "pike@roxen.com" <pike@roxen.com>
Date: Tue, 5 Mar 2002 18:22:25 -0500
Subject: Revised patch for Darwin/MacOSX
```
Here's a revised patch for pike 7.3.16 to get dynamic modules working on
MacOSX/Darwin. After considerable fiddling, it appears that it will be
necessary to use the flat namespace when compiling for Darwin (ask me
offline if you need specific examples and reasons). The attached patch
provides the necessary changes for configure.in.
That said, there are some other problems that I've identified (but don't
have patches for):
1. the configure script for the Java module always fails complaining
about not having a working ls. There is no relevant information in
config.log for me to be able to determine what the problem really is,
though I'm sure it's a simple fix.
2. If I install X11 and GTK (from fink if that's helpful), it's
necessary to use the -traditional-cpp flag to get the GTK module to
compile. I'm pretty sure the flag is set in the main configure script
but it doesn't seem to propagate.
Hope this helps!
Bill
--- configure.in.orig Thu Feb 28 20:23:12 2002
+++ configure.in Tue Mar 5 18:08:03 2002
@@ -1318,6 +1318,7 @@
# Foundation framework needed by JavaVM.framework. The OS X 10.1
linker
# no longer includes indirect dependencies so we need to add them
here.
AC_SYS_COMPILER_FLAG(-framework Foundation,
framework_Foundation, LDFLAGS)
+ AC_SYS_COMPILER_FLAG(-framework System, framework_System, LDFLAGS)
```
# -flat_namespace only needed for linking with libMallocDebug
# AC_SYS_COMPILER_FLAG(-flat_namespace, flat_namespace, LDFLAGS)
@@ -5435,7 +5436,7 @@
fi
;;
Darwin*)
- LDSHARED="ld -bundle -bind_at_load -undefined suppress -lbundle1.o"
+ LDSHARED="ld -bundle -bind_at_load -flat_namespace -undefined
suppress -lbundle1.o"
;;
IRIX*)
if test "$GCC" = yes ; then
```Pike 7.4Henrik (Grubba) GrubbströmHenrik (Grubba) Grubbströmhttps://git.lysator.liu.se/pikelang/pike/-/issues/8105Path verification on NT sometimes fails due to case of drive letter.2018-05-15T17:37:05ZPeter BortasPath verification on NT sometimes fails due to case of drive letter.Imported from https://youtrack.roxen.com/issue/PIKE-105
Reported by @grubba
```
%% Request for /webdav/.htaccess
%% URL module mod: Authentication: .htaccess support
%% Location module [/we...Imported from https://youtrack.roxen.com/issue/PIKE-105
Reported by @grubba
```
%% Request for /webdav/.htaccess
%% URL module mod: Authentication: .htaccess support
%% Location module [/webdav/] mod: /webdav/ from c:/distt.../webdav/
%% Calling find_file()...
%% find_file(".htaccess")
Path verification of ".htaccess" failed:
"c:\\disttest\\install test\\ws_6_2\\var\\testsuite\\webdav\\" is not a prefix of "C:\\disttest\\install test\\ws_6_2\\var\\testsuite\\webdav\\.htaccess"
%% Permission denied.
%% Returned 403.
```https://git.lysator.liu.se/pikelang/pike/-/issues/1457PDFs: Code examples loses newlines2009-04-16T14:11:39ZPeter BortasPDFs: Code examples loses newlinesImported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=1457
Reported by Martin Nilsson, IDA <nilsson@pike.ida.liu.se>
All code examples in the pike tutorial PDF has no newlines. The same
problem exists in the Roxen manuals-Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=1457
Reported by Martin Nilsson, IDA <nilsson@pike.ida.liu.se>
All code examples in the pike tutorial PDF has no newlines. The same
problem exists in the Roxen manuals-Pike 7.0https://git.lysator.liu.se/pikelang/pike/-/issues/5636Performance problems in Locale.Charset.*.low_convert2010-08-24T16:41:33ZPeter BortasPerformance problems in Locale.Charset.*.low_convertImported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=5636
Reported by Martin Karlgren <marty@roxen.com>
Locale.Charset.*.low_convert are very inefficient when they need to fallback to replacement strings/callbacks. This bec...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=5636
Reported by Martin Karlgren <marty@roxen.com>
Locale.Charset.*.low_convert are very inefficient when they need to fallback to replacement strings/callbacks. This becomes noticeable when the input string is relatively large and contains many wide characters.
$ time pike -e 'Locale.Charset.encoder ("latin1", "")->feed ("\x100" * 100000);'
real 0m0.794s
user 0m0.788s
sys 0m0.000s
$ time pike -e 'Locale.Charset.encoder ("latin1", "")->feed ("\x100" * 500000);'
real 1m15.714s
user 0m24.762s
sys 0m50.815s
$ time pike -e 'Locale.Charset.encoder ("latin1", "")->feed ("\xff" * 500000);'
real 0m0.191s
user 0m0.116s
sys 0m0.008sPike 7.8Henrik (Grubba) GrubbströmHenrik (Grubba) Grubbström