/** Build \ref Capability from data. No parsing required.
*/
- sat::detail::IdType relFromStr( ::_Pool * pool_r,
+ sat::detail::IdType relFromStr( sat::detail::CPool * pool_r,
const Arch & arch_r,
const std::string & name_r,
Rel op_r,
/** Build \ref Capability from data, just parsing name for '[.arch]' and detect
* 'kind srcpackage' (will be mapped to arch \c src).
*/
- sat::detail::IdType relFromStr( ::_Pool * pool_r,
+ sat::detail::IdType relFromStr( sat::detail::CPool * pool_r,
const std::string & name_r, Rel op_r, const Edition & ed_r,
const ResKind & kind_r )
{
/** Full parse from string, unless Capability::PARSED.
*/
- sat::detail::IdType relFromStr( ::_Pool * pool_r,
+ sat::detail::IdType relFromStr( sat::detail::CPool * pool_r,
const Arch & arch_r, // parse from name if empty
const std::string & str_r, const ResKind & kind_r,
Capability::CtorFlag flag_r )
// str_r might be the form "libzypp-1.2.3-4.5(.arch)'
// correctly parsed as name capability by the ctor.
- if ( detail.isNamed() && ::strrchr( detail.name().c_str(), '-' ) && sat::WhatProvides( cap ).empty() )
+ // TODO: Think about allowing glob char in name - for now don't process
+ if ( detail.isNamed() && !::strpbrk( detail.name().c_str(), "*?[{" )
+ && ::strrchr( detail.name().c_str(), '-' ) && sat::WhatProvides( cap ).empty() )
{
Arch origArch( detail.arch() ); // to support a trailing .arch