[brlcad-commits] SF.net SVN: brlcad:[34631] brlcad/trunk/src/libged/arb.c
Open Source Solid Modeling CAD
Brought to you by:
brlcad
From: <br...@us...> - 2009-06-02 12:53:09
|
Revision: 34631 http://brlcad.svn.sourceforge.net/brlcad/?rev=34631&view=rev Author: brlcad Date: 2009-06-02 12:44:54 +0000 (Tue, 02 Jun 2009) Log Message: ----------- diradd + put_internal pattern. Modified Paths: -------------- brlcad/trunk/src/libged/arb.c Modified: brlcad/trunk/src/libged/arb.c =================================================================== --- brlcad/trunk/src/libged/arb.c 2009-06-02 12:36:32 UTC (rev 34630) +++ brlcad/trunk/src/libged/arb.c 2009-06-02 12:44:54 UTC (rev 34631) @@ -63,10 +63,7 @@ return GED_ERROR; } - if ( db_lookup( gedp->ged_wdbp->dbip, argv[1], LOOKUP_QUIET ) != DIR_NULL ) { - bu_vls_printf(&gedp->ged_result_str, "%s: %s already exists", argv[0], argv[1]); - return GED_ERROR; - } + GED_CHECK_EXISTS(gedp, argv[1], LOOKUP_QUIET, GED_ERROR); /* get rotation angle */ if (sscanf(argv[2], "%lf", &rota) != 1) { @@ -124,20 +121,9 @@ for ( i=0; i<4; i++ ) VJOIN1( arb->pt[i+4], arb->pt[i], -50.8, norm1 ); - if ( (dp=db_diradd( gedp->ged_wdbp->dbip, argv[1], -1L, 0, DIR_SOLID, (genptr_t)&internal.idb_type)) == DIR_NULL ) - { - rt_db_free_internal( &internal, &rt_uniresource ); - bu_vls_printf(&gedp->ged_result_str, "%s: Cannot add %s to directory\n", argv[0], argv[1]); - return GED_ERROR; - } + GED_DB_DIRADD(gedp, argv[1], -1L, 0, DIR_SOLID, (genptr_t)&internal.idb_type, GED_ERROR); + GED_DB_PUT_INTERNAL(gedp, dp, &internal, &rt_uniresource, GED_ERROR); - if ( rt_db_put_internal( dp, gedp->ged_wdbp->dbip, &internal, &rt_uniresource ) < 0 ) - { - rt_db_free_internal( &internal, &rt_uniresource ); - bu_vls_printf(&gedp->ged_result_str, "%s: Database write error, aborting\n", argv[0]); - return GED_ERROR; - } - return GED_OK; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |