version 1.4, 2025/03/24 04:13:11
|
version 1.5, 2025/04/10 01:24:38
|
Line 25
|
Line 25
|
* along with FreeM. If not, see <https://www.gnu.org/licenses/>. |
* along with FreeM. If not, see <https://www.gnu.org/licenses/>. |
* |
* |
* $Log$ |
* $Log$ |
|
* Revision 1.5 2025/04/10 01:24:38 snw |
|
* Remove C++ style comments |
|
* |
* Revision 1.4 2025/03/24 04:13:11 snw |
* Revision 1.4 2025/03/24 04:13:11 snw |
* Replace action macro dat with fra_dat to avoid symbol conflict on OS/2 |
* Replace action macro dat with fra_dat to avoid symbol conflict on OS/2 |
* |
* |
Line 93 void mref2str(freem_ref_t *ref, char *ke
|
Line 96 void mref2str(freem_ref_t *ref, char *ke
|
strcat (key, ref->name); |
strcat (key, ref->name); |
} |
} |
|
|
// ends with EOL |
/* ends with EOL */ |
strncat (key, "\201", 2); |
strncat (key, "\201", 2); |
|
|
} |
} |
Line 142 short freem_get(freem_ref_t *ref)
|
Line 145 short freem_get(freem_ref_t *ref)
|
|
|
freem_return_io (); |
freem_return_io (); |
|
|
// set up the EOL-delimited string |
/* set up the EOL-delimited string */ |
mref2str (ref, key); |
mref2str (ref, key); |
|
|
switch (ref->reftype) { |
switch (ref->reftype) { |
|
|
case MREF_RT_LOCAL: |
case MREF_RT_LOCAL: |
// call into the symbol table to get the local var |
/* call into the symbol table to get the local var */ |
symtab (get_sym, key, result); |
symtab (get_sym, key, result); |
ref->status = merr (); |
ref->status = merr (); |
break; |
break; |
|
|
case MREF_RT_GLOBAL: |
case MREF_RT_GLOBAL: |
// call into the FreeM global handler; result in &result |
/* call into the FreeM global handler; result in &result */ |
global (get_sym, key, result); |
global (get_sym, key, result); |
ref->status = merr (); |
ref->status = merr (); |
break; |
break; |
|
|
case MREF_RT_SSVN: |
case MREF_RT_SSVN: |
// call into the SSVN code |
/* call into the SSVN code */ |
ssvn (get_sym, key, result); |
ssvn (get_sym, key, result); |
ref->status = merr (); |
ref->status = merr (); |
break; |
break; |
Line 169 short freem_get(freem_ref_t *ref)
|
Line 172 short freem_get(freem_ref_t *ref)
|
|
|
stcnv_m2c (result); |
stcnv_m2c (result); |
|
|
strncpy (ref->value, result, 255); |
strncpy (ref->value, result, sizeof (ref->value)); |
|
|
freem_release_io (); |
freem_release_io (); |
|
|
Line 190 short freem_set(freem_ref_t *ref)
|
Line 193 short freem_set(freem_ref_t *ref)
|
switch (ref->reftype) { |
switch (ref->reftype) { |
|
|
case MREF_RT_LOCAL: |
case MREF_RT_LOCAL: |
// call into the symbol table to set the local var |
/* call into the symbol table to set the local var */ |
symtab (set_sym, key, data); |
symtab (set_sym, key, data); |
ref->status = merr (); |
ref->status = merr (); |
break; |
break; |
|
|
case MREF_RT_GLOBAL: |
case MREF_RT_GLOBAL: |
// call into the FreeM global handler; data in &data |
/* call into the FreeM global handler; data in &data */ |
global (set_sym, key, data); |
global (set_sym, key, data); |
ref->status = merr (); |
ref->status = merr (); |
break; |
break; |
|
|
case MREF_RT_SSVN: |
case MREF_RT_SSVN: |
// call into the SSVN code |
/* call into the SSVN code */ |
ssvn (set_sym, key, data); |
ssvn (set_sym, key, data); |
ref->status = merr (); |
ref->status = merr (); |
break; |
break; |
Line 227 short freem_kill(freem_ref_t *ref)
|
Line 230 short freem_kill(freem_ref_t *ref)
|
switch (ref->reftype) { |
switch (ref->reftype) { |
|
|
case MREF_RT_LOCAL: |
case MREF_RT_LOCAL: |
// call into the symbol table to kill the local var |
/* call into the symbol table to kill the local var */ |
symtab (kill_sym, key, result); |
symtab (kill_sym, key, result); |
ref->status = merr (); |
ref->status = merr (); |
break; |
break; |
|
|
case MREF_RT_GLOBAL: |
case MREF_RT_GLOBAL: |
// call into the FreeM global handler; result in &result |
/* call into the FreeM global handler; result in &result */ |
global (kill_sym, key, result); |
global (kill_sym, key, result); |
ref->status = merr (); |
ref->status = merr (); |
break; |
break; |
|
|
case MREF_RT_SSVN: |
case MREF_RT_SSVN: |
// call into the SSVN code |
/* call into the SSVN code */ |
ssvn (kill_sym, key, result); |
ssvn (kill_sym, key, result); |
ref->status = merr (); |
ref->status = merr (); |
break; |
break; |
Line 248 short freem_kill(freem_ref_t *ref)
|
Line 251 short freem_kill(freem_ref_t *ref)
|
|
|
stcnv_m2c (result); |
stcnv_m2c (result); |
|
|
strncpy (ref->value, result, 255); |
strncpy (ref->value, result, sizeof (ref->value) - 1); |
|
|
freem_release_io (); |
freem_release_io (); |
|
|
Line 268 short freem_data(freem_ref_t *ref)
|
Line 271 short freem_data(freem_ref_t *ref)
|
switch (ref->reftype) { |
switch (ref->reftype) { |
|
|
case MREF_RT_LOCAL: |
case MREF_RT_LOCAL: |
// call into the symbol table |
/* call into the symbol table */ |
symtab (fra_dat, key, result); |
symtab (fra_dat, key, result); |
ref->status = merr (); |
ref->status = merr (); |
break; |
break; |
|
|
case MREF_RT_GLOBAL: |
case MREF_RT_GLOBAL: |
// call into the FreeM global handler; result in &result |
/* call into the FreeM global handler; result in &result */ |
global (fra_dat, key, result); |
global (fra_dat, key, result); |
ref->status = merr (); |
ref->status = merr (); |
break; |
break; |
|
|
case MREF_RT_SSVN: |
case MREF_RT_SSVN: |
// call into the SSVN code |
/* call into the SSVN code */ |
ssvn (fra_dat, key, result); |
ssvn (fra_dat, key, result); |
ref->status = merr (); |
ref->status = merr (); |
break; |
break; |
Line 308 short freem_order(freem_ref_t *ref)
|
Line 311 short freem_order(freem_ref_t *ref)
|
switch (ref->reftype) { |
switch (ref->reftype) { |
|
|
case MREF_RT_LOCAL: |
case MREF_RT_LOCAL: |
// call into the symbol table for $ORDER |
/* call into the symbol table for $ORDER */ |
symtab (fra_order, key, result); |
symtab (fra_order, key, result); |
ref->status = merr (); |
ref->status = merr (); |
break; |
break; |
|
|
case MREF_RT_GLOBAL: |
case MREF_RT_GLOBAL: |
// call into the FreeM global handler; result in &result |
/* call into the FreeM global handler; result in &result */ |
global (fra_order, key, result); |
global (fra_order, key, result); |
ref->status = merr (); |
ref->status = merr (); |
break; |
break; |
|
|
case MREF_RT_SSVN: |
case MREF_RT_SSVN: |
// call into the SSVN code |
/* call into the SSVN code */ |
ssvn (fra_order, key, result); |
ssvn (fra_order, key, result); |
ref->status = merr (); |
ref->status = merr (); |
break; |
break; |
Line 347 short freem_query(freem_ref_t *ref)
|
Line 350 short freem_query(freem_ref_t *ref)
|
switch (ref->reftype) { |
switch (ref->reftype) { |
|
|
case MREF_RT_LOCAL: |
case MREF_RT_LOCAL: |
// call into the symbol table |
/* call into the symbol table */ |
symtab (fra_query, key, result); |
symtab (fra_query, key, result); |
ref->status = merr (); |
ref->status = merr (); |
break; |
break; |
|
|
case MREF_RT_GLOBAL: |
case MREF_RT_GLOBAL: |
// call into the FreeM global handler; result in &result |
/* call into the FreeM global handler; result in &result */ |
global (fra_query, key, result); |
global (fra_query, key, result); |
ref->status = merr (); |
ref->status = merr (); |
break; |
break; |
|
|
case MREF_RT_SSVN: |
case MREF_RT_SSVN: |
// call into the SSVN code |
/* call into the SSVN code */ |
ssvn (fra_query, key, result); |
ssvn (fra_query, key, result); |
ref->status = merr (); |
ref->status = merr (); |
break; |
break; |