Bug 116432

Summary: inst_prepdisk broken
Product: [openSUSE] SUSE LINUX 10.0 Reporter: Andreas Jaeger <aj>
Component: YaST2Assignee: Klaus Kämpf <kkaempf>
Status: RESOLVED FIXED QA Contact: Klaus Kämpf <kkaempf>
Severity: Blocker    
Priority: P5 - None    
Version: RC 1   
Target Milestone: ---   
Hardware: Other   
OS: All   
Whiteboard:
Found By: Other Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: y2log file

Description Andreas Jaeger 2005-09-12 06:53:59 UTC
this is with RC2-pretest, installation stops, y2log shows:

2005-09-12 08:45:35 <1> linux(3053) [Interpreter] ProductControl.ycp:887 Calling
YaST client inst_do_resize (arguments: [$["enable_back":true, "enable_next":true]])
2005-09-12 08:45:35 <1> linux(3053) [Interpreter] ProductControl.ycp:887 Called
YaST client returned: `auto
2005-09-12 08:45:35 <1> linux(3053) [YCP] ProductControl.ycp:187 mod:
$["id":"initial_10", "label":"Perform Installation", "name":"prepdisk"]
2005-09-12 08:45:35 <1> linux(3053) [YCP] ProductControl.ycp:861 Calling
`inst_prepdisk ($["enable_back":true, "enable_next":true])
2005-09-12 08:45:35 <3> linux(3053) [Parser] clients/inst_prepdisk.ycp:121 Bad
'%%' selector in format string at '%x', use '%%n' (n=1,2,...) instead
2005-09-12 08:45:35 <3> linux(3053) [Parser] clients/inst_prepdisk.ycp:115 Wrong
parameters in call to sformat(...)
2005-09-12 08:45:35 <3> linux(3053) [Parser] clients/inst_prepdisk.ycp:115
Expected '(string, ...)', seen '(string, ...)'.
2005-09-12 08:45:35 <2> linux(3053) [Parser] clients/inst_prepdisk.ycp:125
Warning: Identifier 'txt' might be used uninitialized
2005-09-12 08:45:35 <2> linux(3053) [Parser] clients/inst_prepdisk.ycp:125
Warning: Identifier 'txt' might be used uninitialized
2005-09-12 08:45:35 <2> linux(3053) [Parser] clients/inst_prepdisk.ycp:127
Warning: Identifier 'txt' might be used uninitialized
2005-09-12 08:45:35 <1> linux(3053) [wfm] Y2CCWFM.cc(createInLevel):153 Parsing
finished
2005-09-12 08:45:35 <3> linux(3053) [Interpreter] ProductControl.ycp:171 Can't
find YCP client component inst_prepdisk: No such file or directory
Comment 1 Andreas Jaeger 2005-09-12 06:54:22 UTC
Created attachment 49561 [details]
y2log file
Comment 2 Andreas Jaeger 2005-09-12 07:18:31 UTC
*** Bug 116429 has been marked as a duplicate of this bug. ***
Comment 3 Thomas Fehr 2005-09-12 08:55:06 UTC
As far as I can see, this  is certainly noting in inst_predisk itself but in the
lower levels of YaST2 core. inst_prepdisk.ycp in RC2 is uncahnged to RC1.

Maybe the problem could be caused by the switch to large files support in 
yast2-core.
Comment 4 Lukas Ocilka 2005-09-12 09:11:17 UTC
Thomas, could you, please, try to write here a part of YCP code which could
reproduce the error?

`ret` and `Storage::LastAction()`?

--- cut ---
The source reads

  string txt = sformat(_("Storage modification failed.

System error code was: %1

Failure occurred during following action:
%2
"), ret, Storage::LastAction() );

Since the parser complains about the sformat, txt does not get initialized.

However, the sformat checker sees a "%x" in the string which is not there.

We suspected a translation error but aj installed with "en_US" and this string
goes untranslated.

This is VERY puzzling ...

Klaus
--- cut ---
Comment 5 Klaus Kämpf 2005-09-12 09:15:12 UTC
I'm currently rebuilding yast2-core without AC_SYS_LARGEFILE and will retry an 
NFS installation 
Comment 6 Klaus Kämpf 2005-09-12 09:47:24 UTC
Building without AC_SYS_LARGEFILE does NOT change anything  
Comment 7 Klaus Kämpf 2005-09-12 10:03:31 UTC
The offending code is inside an 'if () { ... }". If I move it outside, the 
code is accepted. 
Comment 9 Thomas Fehr 2005-09-12 11:13:38 UTC
I just had the same error message here after I installed yast2-core from SL10-RC2
It was a report about a simlar sformat construct as used in inst_predisk.

After I reverted yast2-core back to the version from SL10-RC1 the problem was
gone.
Comment 10 Klaus Kämpf 2005-09-12 11:16:54 UTC
An NFS install with the fixed package works. Will submit to STABLE now.