https://bugs.kde.org/show_bug.cgi?id=359015

            Bug ID: 359015
           Summary: fedora 23: kde-info2html exits with error (perl
                    compatibility problem) -> info browsing fails "Cannot
                    Initiate the info Protocol"
           Product: kio
           Version: unspecified
          Platform: Fedora RPMs
               URL: info:ld
                OS: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: NOR
         Component: info
          Assignee: hoel...@kde.org
          Reporter: gn...@cantab.net

On fedora 23 kde-info2html doesn't run due to a perl construct that is
obsolete. Running it manually shows the error

Can't use 'defined(@array)' (Maybe you should just omit the defined()?) at
./kde-info2html line 174.

Reproducible: Always

Steps to Reproduce:
1. type info:<topic> into konqueror URL bar

Actual Results:  
The requested operation could not be completed

Cannot Initiate the info Protocol

Technical Reason: Unable to Launch Process

Details of the Request:

URL: info:ld
Protocol: info
Date and Time: Friday 05 February 2016 10:27
Additional Information:
The following is displayed:

Description:

The program on your computer which provides access to the <strong>info</strong>
protocol could not be started. This is usually due to technical reasons.

Expected Results:  
The requested info page should be displayed.


The perl version is

This is perl 5, version 22, subversion 1 (v5.22.1) built for
x86_64-linux-thread-multi
(with 14 registered patches, see perl -V for more detail)

The following simple-minded patch makes it run on fedora 23:

diff -u kde-info2html kde-info2html.new
--- kde-info2html       2015-12-14 07:08:50.000000000 +0000
+++ kde-info2html.new   2016-02-05 09:49:39.853746561 +0000
@@ -171,7 +171,7 @@
                next if $looking && !/\* Menu/;
                $looking = 0;
                my @item = &ParseMenuItem($_,'dir');
-               if (!defined(@item)) { next }
+               if (!@item) { next }
                my ($MenuLinkTag, $MenuLinkFile, $MenuLinkRef, $MenuLinkText) =
@item;
                if ($MenuLinkRef eq $FileName) {
                        &Redirect($MenuLinkFile, $MenuLinkTag);
@@ -429,7 +429,7 @@
 sub MenuItem2HTML {
     my ($Line, $BaseInfoFile) = @_;
     my @parse_results = &ParseMenuItem($Line, $BaseInfoFile);
-    if (!defined (@parse_results)) { return $Line; }
+    if (!@parse_results) { return $Line; }
     my ($MenuLinkTag, $MenuLinkFile, $MenuLinkRef, $MenuLinkText) =
@parse_results;
     #-- produce a HTML line
     return "<tr class=\"infomenutr\"><td class=\"infomenutd\"
style=\"width:30%\"><ul><li><a
href=\"info:/$MenuLinkFile/$MenuLinkTag\">$MenuLinkRef</a></ul></td><td
class=\"infomenutd\">$MenuLinkText";

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to