SERVER-1270 Elim c_str() /scripting

This commit is contained in:
Alberto Lerner
2010-07-20 12:42:07 -04:00
parent 2b14da5f10
commit 5227b6777f
3 changed files with 40 additions and 40 deletions

View File

@@ -324,39 +324,39 @@ namespace mongo {
assert( s[0] == '/' );
s = s.substr(1);
string::size_type end = s.rfind( '/' );
b.appendRegex( name.c_str() , s.substr( 0 , end ).c_str() , s.substr( end + 1 ).c_str() );
b.appendRegex( name , s.substr( 0 , end ).c_str() , s.substr( end + 1 ).c_str() );
}
void append( BSONObjBuilder& b , string name , jsval val , BSONType oldType = EOO , const TraverseStack& stack=TraverseStack() ){
//cout << "name: " << name << "\t" << typeString( val ) << " oldType: " << oldType << endl;
switch ( JS_TypeOfValue( _context , val ) ){
case JSTYPE_VOID: b.appendUndefined( name.c_str() ); break;
case JSTYPE_NULL: b.appendNull( name.c_str() ); break;
case JSTYPE_VOID: b.appendUndefined( name ); break;
case JSTYPE_NULL: b.appendNull( name ); break;
case JSTYPE_NUMBER: {
double d = toNumber( val );
if ( oldType == NumberInt && ((int)d) == d )
b.append( name.c_str() , (int)d );
b.append( name , (int)d );
else
b.append( name.c_str() , d );
b.append( name , d );
break;
}
case JSTYPE_STRING: b.append( name.c_str() , toString( val ) ); break;
case JSTYPE_BOOLEAN: b.appendBool( name.c_str() , toBoolean( val ) ); break;
case JSTYPE_STRING: b.append( name , toString( val ) ); break;
case JSTYPE_BOOLEAN: b.appendBool( name , toBoolean( val ) ); break;
case JSTYPE_OBJECT: {
JSObject * o = JSVAL_TO_OBJECT( val );
if ( ! o || o == JSVAL_NULL ){
b.appendNull( name.c_str() );
b.appendNull( name );
}
else if ( ! appendSpecialDBObject( this , b , name , val , o ) ){
BSONObj sub = toObject( o , stack );
if ( JS_IsArrayObject( _context , o ) ){
b.appendArray( name.c_str() , sub );
b.appendArray( name , sub );
}
else {
b.append( name.c_str() , sub );
b.append( name , sub );
}
}
break;
@@ -368,7 +368,7 @@ namespace mongo {
appendRegex( b , name , s );
}
else {
b.appendCode( name.c_str() , getFunctionCode( val ).c_str() );
b.appendCode( name , getFunctionCode( val ).c_str() );
}
break;
}