Skip to content

Commit b1d9fd5

Browse files
committed
Set errno to ENOSYS for ephemetis() with no ephem provider.
1 parent 5fd9f42 commit b1d9fd5

File tree

2 files changed

+6
-0
lines changed

2 files changed

+6
-0
lines changed

src/novas.c

+2
Original file line numberDiff line numberDiff line change
@@ -6425,6 +6425,8 @@ short ephemeris(const double *jd_tdb, const object *body, enum novas_origin orig
64256425
enum novas_origin eph_origin = NOVAS_HELIOCENTER;
64266426

64276427
error = -1;
6428+
errno = ENOSYS;
6429+
64286430
if(readeph2_call) {
64296431
// If there is a newstyle epehemeris access routine set, we will prefer it.
64306432
error = readeph2_call(body->name, body->number, jd_tdb[0], jd_tdb[1], &eph_origin, posvel, &posvel[3]);

test/src/test-errors.c

+4
Original file line numberDiff line numberDiff line change
@@ -1116,6 +1116,10 @@ static int test_geom_posvel() {
11161116
frame.accuracy = 2;
11171117
if(check("geom_posvel:frame:accuracy:2", -1, novas_geom_posvel(&o, &frame, NOVAS_ICRS, pos, vel))) n++;
11181118

1119+
frame.accuracy = NOVAS_REDUCED_ACCURACY;
1120+
make_ephem_object("blah", 111111, &o);
1121+
if(check("geom_posvel:ephem_object", -1, novas_geom_posvel(&o, &frame, NOVAS_ICRS, pos, vel))) n++;
1122+
11191123
return n;
11201124
}
11211125

0 commit comments

Comments
 (0)