Changeset 10171

Show
Ignore:
Timestamp:
07/26/10 12:30:50 (4 years ago)
Author:
Snyder.Jason
Message:

bools, chars, and octals have to be treated differently than other data types. See Advanced CORBA Programming in C++ by Henning and Vinoski, chapter 15.3 for more details

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • ossiedev/trunk/system/ossie/parser/PRFSimpleProperty.cpp

    r10160 r10171  
    3434 
    3535    if (isBoolean()) { 
    36         dataType->value <<= ossieSupport::strings_to_boolean(value); 
     36        CORBA::Boolean b = ossieSupport::strings_to_boolean(value); 
     37        dataType->value <<= CORBA::Any::from_boolean(b); 
     38        //dataType->value <<= ossieSupport::strings_to_boolean(CORBA::Any::from_boolean(value)); 
    3739    } else if (isChar()) { 
    38         dataType->value <<= ossieSupport::strings_to_char(value); 
     40        CORBA::Char c = ossieSupport::strings_to_char(value); 
     41        dataType->value <<= CORBA::Any::from_char(c); 
     42        //dataType->value <<= ossieSupport::strings_to_char(value); 
    3943    } else if (isDouble()) { 
    4044        dataType->value <<= ossieSupport::strings_to_double(value); 
     
    4650        dataType->value <<= ossieSupport::strings_to_long(value); 
    4751    } else if (isOctet()) { 
    48         dataType->value <<= ossieSupport::strings_to_octet(value); 
     52                CORBA::Octet o = ossieSupport::strings_to_octet(value); 
     53                dataType->value <<= CORBA::Any::from_octet(o); 
     54        //dataType->value <<= ossieSupport::strings_to_octet(value); 
    4955    } else if (isUShort()) { 
    5056        dataType->value <<= ossieSupport::strings_to_unsigned_short(value); 
     
    5763 
    5864} 
     65 
    5966 
    6067