[interchange-cvs] interchange - racke modified 2 files
interchange-cvs at icdevgroup.org
interchange-cvs at icdevgroup.org
Tue Aug 7 06:55:59 EDT 2007
User: racke
Date: 2007-08-07 10:55:57 GMT
Modified: . WHATSNEW-5.5
Modified: dist/lib/UI/pages/admin direct_sql.html
Log:
Avoid crashes on table export if data contains Interchange tags (#100).
Revision Changes Path
1.44 +2 -0 interchange/WHATSNEW-5.5
rev 1.44, prev_rev 1.43
Index: WHATSNEW-5.5
===================================================================
RCS file: /var/cvs/interchange/WHATSNEW-5.5,v
retrieving revision 1.43
retrieving revision 1.44
diff -u -r1.43 -r1.44
--- WHATSNEW-5.5 6 Aug 2007 20:05:40 -0000 1.43
+++ WHATSNEW-5.5 7 Aug 2007 10:55:56 -0000 1.44
@@ -150,6 +150,8 @@
* Fixed test to see if sku exists on creation of new item
in quick_question.html (#17)
+* Avoid crashes on table export if data contains Interchange tags (#100).
+
Standard demo
-------------
1.7 +18 -17 interchange/dist/lib/UI/pages/admin/direct_sql.html
rev 1.7, prev_rev 1.6
Index: direct_sql.html
===================================================================
RCS file: /var/cvs/interchange/dist/lib/UI/pages/admin/direct_sql.html,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- direct_sql.html 23 Apr 2005 18:10:07 -0000 1.6
+++ direct_sql.html 7 Aug 2007 10:55:57 -0000 1.7
@@ -146,30 +146,31 @@
</blockquote>
<table border=1>
[if cgi download]
-
- [deliver interpolate=1][query
- table="[cgi mv_data_table]"
- st=db
- list=1
- sql=`$sql`
- ml="[cgi limit]"
- ][sql-sub line_proc]
- shift;
- my $row = shift;
- my $out = '';
- if(! $t_header_done++) {
- my $o = shift;
- $out .= join "\t", @{$o->{mv_return_fields}};
- $out .= "\n";
- }
+ [perl tables="[cgi mv_data_table]"]
+ my ($db, @set, $records, $i, $out);
+
+ $db = $Db{$CGI->{mv_data_table}};
+ @set = $db->query({sql => $sql});
+
+ $out .= join ("\t", @{$set[2]}) . "\n";
+
+ $records = $set[0];
+
+ for ($i = 0; $i < @$records; $i++) {
+ last if $CGI->{limit} && $i == $CGI->{limit};
+
+ $row = $records->[$i];
+
for(@$row) {
s/\r?\n/\r/g;
s/\t/ /g;
}
$out .= join "\t", @$row;
$out .= "\n";
- [/sql-sub][sql-exec line_proc][/sql-exec][/query][/deliver]
+ }
+ $Tag->deliver({body => \$out});
+ [/perl]
[elsif cgi html]
[query
table="[cgi mv_data_table]"
More information about the interchange-cvs
mailing list