#include <memory.h>
#include <stdlib.h>
#include "udanax.h"
Include dependency graph for corediskout.cxx:

Go to the source code of this file.
Defines | |
| #define | hputinloaf(hp, lp, tp) ((void)humberput((int)(hp),(humber)(lp),(unsigned int *)(tp)),(lp)=((char*)lp)+*(tp)) |
Functions | |
| void | subtreewriterecurs (Session *sess, typecuc *father) |
| ??? | |
| void | orglwritepart2 (Session *sess, typecbc *orglcbcptr) |
| ??? | |
| bool | decrementusers () |
| ??? | |
| void | indiskexit () |
| ??? | |
| void | diskexit () |
| ??? | |
| void | diskflush () |
| ??? | |
| void | writeenfilades () |
| ??? | |
| void | hputwiddsp (typecuc *ptr, char **loafptrptr) |
| ??? | |
| void | hputinfo (typecbc *ptr, char **loafptrptr) |
| ??? | |
| int | varpackloaf (typecuc *father, typediskloaf *xloafptr, int refcount, int flag) |
| ??? | |
| int | packloaf (typecuc *father, typediskloaf *loafptr, int refcount, int flag) |
| ??? | |
| void | uniqueoutloaf (typecuc *father, int refcount) |
| ??? | |
| void | checkmodifiednotthere (typecuc *father, char *string) |
| ??? | |
| void | deletewithgarbageddescendents (typediskloafptr diskptr, typecuc *father, bool deletefullcrumflag) |
| ??? | |
| void | deletefullcrumandgarbageddescendents (typediskloafptr diskptr, bool deletefullcrumflag, typediskloaf *loafp, typediskloafptr newdiskptr) |
| ??? | |
| void | orglwrite (typecbc *orglcbcptr) |
| ??? | |
| void | subtreewrite (typecuc *father) |
| ??? | |
Variables | |
| int | noishouldbother |
| int | notakenephewnd |
| int | noeatbrosnd |
| typegranf | granf |
| typespanf | spanf |
| typediskloaf | zzzeroloaf |
| typeuberdiskloaf | zzzerouberloaf |
(to be defined)
Definition in file corediskout.cxx.
|
|
Definition at line 191 of file corediskout.cxx. Referenced by varpackloaf(). |
|
||||||||||||
|
??? (to be defined) Definition at line 430 of file corediskout.cxx. References assert, dump(), L, and typecuc::leftson. Referenced by subtreewriterecurs().
00433 {
00434 return;
00435
00436 #ifndef DISTRIBUTION
00437 #ifdef UnDeFineD
00438 if (father->modified && (!father->leftson) /* &&father->sonor.diskblocknumber== * DISKPTRNULL */ ) {
00439 dump(father);
00440 L("in %s subtreewrite", string);
00441 assert(0); // in subtreewriterecurs bad crum
00442 }
00443 #endif
00444 #endif
00445 }
|
|
|
??? (to be defined) Definition at line 292 of file be.cxx.
00293 {
00294 return false;
00295 }
|
|
||||||||||||||||||||
|
??? (to be defined) Definition at line 529 of file corediskout.cxx. References typecbc::cinfo, deletewithgarbageddescendents(), typediskloafptr::diskblocknumber, typegranorgl::diskorglptr, DISKPTRNULL, diskset(), GRAN, GRANORGL, typegranbottomcruminfo::granstuff, typegranbottomcruminfo::infotype, initcrum(), inorglinternal(), typecuc::leftbroorfather, NULL, typegranorgl::orglptr, typegranstuff::orglstuff, typecorecrum, and writeloaf(). Referenced by deletewithgarbageddescendents(), and orglwritepart2().
00534 {
00535 if (diskptr.diskblocknumber == DISKPTRNULL)
00536 return;
00537
00538 /* kluge up a bottum crum, use it to read in granf, similarly for spanf */
00539 /* tempcbc = (typecbc *)createcrum(0,GRAN); */
00540
00541 typecbc crum;
00542 typecbc *tempcbc = &crum;
00543 initcrum(0, GRAN, (typecorecrum *) &crum);
00544
00545 tempcbc->cinfo.infotype = GRANORGL;
00546 tempcbc->cinfo.granstuff.orglstuff.diskorglptr = diskptr;
00547
00548 typeuberrawdiskloaf crum2;
00549 if (deletefullcrumflag) {
00550 inorglinternal(tempcbc, &crum2);
00551 /* reserve(tempcbc); */
00552 } else {
00553 inorglinternal(tempcbc, &crum2);
00554 /* reserve(tempcbc); */
00555 diskset(newdiskptr.diskblocknumber);
00556 writeloaf(loafp, newdiskptr, false);
00557 }
00558
00559 tempcbc->cinfo.granstuff.orglstuff.orglptr->leftbroorfather = NULL;
00560 deletewithgarbageddescendents(diskptr, (typecuc *) tempcbc, deletefullcrumflag);
00561 /* kluge SKIMP reserve and rejuvinate added 11-23-86 */
00562 }
|
|
||||||||||||||||
|
??? (to be defined) Definition at line 572 of file corediskout.cxx. References typecuc::cenftype, changerefcount(), deletefullcrumandgarbageddescendents(), findleftson(), findrightbro, GRAN, GRANFDISKLOCATION, GRANORGL, typecbc::height, typecuc::height, NULL, SPANFDISKLOCATION, and typecorecrum. Referenced by deletefullcrumandgarbageddescendents().
00576 {
00577 typecbc *ptr;
00578 typediskloafptr ignoreddiskptr;
00579
00580 if (father->height > 0)
00581 ptr = (typecbc *) findleftson(father);
00582
00583 /* if !flag changerefcount and then possibly recurse */
00584 if (!deletefullcrumflag || !changerefcount(diskptr, -1)) {
00585 if (father->height > 0) {
00586 for (; ptr; ptr = (typecbc *) findrightbro((typecorecrum *) ptr)) {
00587 if (ptr->height > 0)
00588 deletewithgarbageddescendents(((typecuc *) ptr)->sonorigin, (typecuc *) ptr, true);
00589 }
00590 } else if (father->cenftype == GRAN && ((typecbc *) father)->cinfo.infotype == GRANORGL
00591 && ((typecbc *) father)->cinfo.granstuff.orglstuff.orglincore
00592 && ((typecbc *) father)->cinfo.granstuff.orglstuff.diskorglptr.diskblocknumber != GRANFDISKLOCATION
00593 && ((typecbc *) father)->cinfo.granstuff.orglstuff.diskorglptr.diskblocknumber !=
00594 SPANFDISKLOCATION) {
00595 deletefullcrumandgarbageddescendents(((typecbc *) father)->cinfo.granstuff.orglstuff.diskorglptr, true, /* ECH
00596 * 8-28-88ignoreddiskptr, */
00597 (typediskloaf *) NULL, ignoreddiskptr);
00598 }
00599 }
00600 /* subtreefree(ptr); *//*12/04/86 */
00601 }
|
|
|
??? (to be defined) Definition at line 130 of file corediskout.cxx. References indiskexit(). Referenced by frontenddied(), and quitxanadu().
00131 {
00132 indiskexit();
00133 }
|
|
|
??? (to be defined) Definition at line 144 of file corediskout.cxx. References granf, initkluge(), spanf, and writeenfilades(). Referenced by main().
00145 {
00146 writeenfilades();
00147 initkluge((typecuc **) &granf, (typecuc **) &spanf);
00148 }
|
|
||||||||||||
|
??? (to be defined) Definition at line 239 of file corediskout.cxx. References assert, typecbc::cinfo, typediskloafptr::diskblocknumber, typegranorgl::diskorglptr, GRANNULL, GRANORGL, typegranbottomcruminfo::granstuff, GRANTEXT, typecbc::height, humber, humberput(), typegranbottomcruminfo::infotype, typediskloafptr::insidediskblocknumber, is2dcrum(), L, movmem, typegranstuff::orglstuff, typegrantext::textlength, typegrantext::textstring, typegranstuff::textstuff, tumblerfixedtoptr(), and typecorecrum. Referenced by varpackloaf().
00242 {
00243 unsigned int temp;
00244
00245 if (!is2dcrum((typecorecrum *) ptr)) {
00246 (void)humberput(ptr->cinfo.infotype, (humber) * loafptrptr, &temp);
00247 *loafptrptr += temp;
00248 if (ptr->cinfo.infotype == GRANTEXT) {
00249 (void)humberput((int) ptr->cinfo.granstuff.textstuff.textlength, (humber) * loafptrptr, &temp);
00250 *loafptrptr += temp;
00251 /* hputinloaf(ptr->cinfo.granstuff.textstuff.textlength,(*loafptrptr),&temp); */
00252 movmem(ptr->cinfo.granstuff.textstuff.textstring, (*loafptrptr), ptr->cinfo.granstuff.textstuff.textlength);
00253 *loafptrptr += ptr->cinfo.granstuff.textstuff.textlength;
00254 return;
00255 } else if (ptr->cinfo.infotype == GRANORGL) {
00256 (void)humberput(ptr->cinfo.granstuff.orglstuff.diskorglptr.diskblocknumber, (humber) * loafptrptr, &temp);
00257 *loafptrptr += temp;
00258 (void)humberput(ptr->cinfo.granstuff.orglstuff.diskorglptr.insidediskblocknumber, (humber) * loafptrptr,
00259 &temp);
00260 *loafptrptr += temp;
00261 /* hputinloaf(ptr->cinfo.granstuff.orglstuff.diskorglptr,(*loafptrptr),&temp); */
00262 return;
00263 } else if (ptr->cinfo.infotype == GRANNULL) {
00264 return;
00265 } else {
00266 L("weird infotype in hputinfo %d \n", ptr->cinfo.infotype);
00267 assert(0); // weird infotype in hputinfo
00268 return;
00269 }
00270 } else {
00271 if (ptr->height) {
00272 /* looks like we got this all */
00273 } else {
00274 temp = tumblerfixedtoptr(&((type2dcbc *) ptr)->c2dinfo.homedoc, (humber) * loafptrptr);
00275 (*loafptrptr) += temp;
00276 }
00277 }
00278 }
|
|
||||||||||||
|
??? (to be defined) Definition at line 204 of file corediskout.cxx. References typecuc::cdsp, typecuc::cenftype, typecuc::cwid, typewid::dsas, humber, tumblerfixedtoptr(), and widsize. Referenced by varpackloaf().
00207 {
00208 unsigned int temp;
00209
00210 int nstreams = widsize(ptr->cenftype);
00211 typewid *wptr = &ptr->cdsp;
00212
00213 int i;
00214 for (i = 0; i < nstreams; ++i) {
00215 temp = tumblerfixedtoptr(&wptr->dsas[i], (humber) *loafptrptr);
00216 *loafptrptr += temp;
00217 }
00218
00219 wptr = &ptr->cwid;
00220
00221 for (i = 0; i < nstreams; ++i) {
00222 temp = tumblerfixedtoptr(&wptr->dsas[i], (humber) *loafptrptr);
00223 *loafptrptr += temp;
00224 }
00225 }
|
|
|
??? (to be defined) Definition at line 111 of file corediskout.cxx. References closediskfile(), decrementusers(), and writeenfilades(). Referenced by diskexit().
00112 {
00113 if (decrementusers())
00114 return;
00115
00116 writeenfilades();
00117 closediskfile();
00118
00119 exit(0);
00120 }
|
|
|
??? (to be defined) <Input: User's session context Definition at line 684 of file corediskout.cxx. References assert, Session::free(), NULL, and orglwritepart2(). Referenced by reap(), and writeenfilades().
00686 {
00687 assert(orglcbcptr != NULL); // in orglwrite passed NULL
00688
00689 //now done via a ctor:: inittask(&sess);
00690 Session sess;
00691 orglwritepart2(&sess, orglcbcptr);
00692 sess.free();
00693 }
|
|
||||||||||||
|
??? (to be defined)
Definition at line 611 of file corediskout.cxx. References assert, typecuc::cenftype, changerefcount(), typecbc::cinfo, deletefullcrumandgarbageddescendents(), diskheader, typegranorgl::diskorglptr, typegranbottomcruminfo::granstuff, Diskheader::hasenftops, humber, humber3put(), L, NULL, orglfree(), typegranorgl::orglincore, typegranorgl::orglptr, typegranstuff::orglstuff, packloaf(), partialdiskalloc(), POOM, rejuvinate, reserve(), subtreewriterecurs(), typecorecrum, writeloaf(), and zzzeroloaf. Referenced by orglwrite(), and subtreewriterecurs().
00612 : User's session context 00613 typecbc *orglcbcptr) 00614 { 00615 L("beginning orglwritepart2()\n"); 00616 assert(orglcbcptr != NULL); 00617 00618 typediskloaf loaf = zzzeroloaf; 00619 00620 typegranbottomcruminfo *infoptr = &orglcbcptr->cinfo; 00621 typecuc *orglptr = infoptr->granstuff.orglstuff.orglptr; 00622 00623 if (!orglcbcptr->modified && orglptr) { 00624 orglfree(orglptr); 00625 return; 00626 } 00627 00628 if (infoptr->granstuff.orglstuff.orglincore) { 00629 L("orglincore\n"); 00630 00631 L("calling reserve()\n"); 00632 reserve((typecorecrum *) orglcbcptr); 00633 L("returned from calling reserve()\n"); 00634 00635 typediskloafptr olddiskptr = infoptr->granstuff.orglstuff.diskorglptr; 00636 L("calling subtreewriterecurs()\n"); 00637 subtreewriterecurs(sess, orglptr); 00638 L("returned from calling subtreewriterecurs()\n"); 00639 00640 //writefullcrum(orgl); 00641 00642 int size = packloaf(orglptr, &loaf, 1, 1); 00643 unsigned int dummy; 00644 humber3put(size, (humber) &loaf, &dummy); 00645 00646 if (orglptr->cenftype == POOM) { 00647 L("cenftype == POOM\n"); 00648 00649 int newloaf; 00650 typediskloafptr temploaf = partialdiskalloc(size, &newloaf); 00651 writeloaf(&loaf, temploaf, newloaf); 00652 changerefcount(temploaf, 1); 00653 00654 infoptr->granstuff.orglstuff.diskorglptr = temploaf; 00655 // in below, olddiskptr is just a placeholder 00656 deletefullcrumandgarbageddescendents(olddiskptr, true, (typediskloaf *) NULL, olddiskptr); 00657 //writeloaf(&loaf, infoptr->granstuff.orglstuff.diskorglptr, true); 00658 } else { 00659 L("cenftype != POOM\n"); 00660 00661 if (diskheader.hasenftops) { 00662 deletefullcrumandgarbageddescendents(olddiskptr, false, &loaf, infoptr->granstuff.orglstuff.diskorglptr); 00663 //writeloaf(&loaf, infoptr->granstuff.orglstuff.diskorglptr, true); 00664 } else { 00665 writeloaf(&loaf, infoptr->granstuff.orglstuff.diskorglptr, true); 00666 } 00667 } 00668 00669 /* NULL EFFECT HERE */ 00670 /* ptr->modified = false; */ 00671 rejuvinate((typecorecrum *) orglcbcptr); 00672 orglfree(orglptr); 00673 } 00674 } |
|
||||||||||||||||||||
|
??? (to be defined) Definition at line 375 of file corediskout.cxx. References varpackloaf(). Referenced by orglwritepart2(), and uniqueoutloaf().
00380 {
00381 return varpackloaf(father, loafptr, refcount, flag);
00382 }
|
|
|
??? (to be defined) <Input: User's session context Definition at line 703 of file corediskout.cxx. References Session::free(), and subtreewriterecurs(). Referenced by reap().
00705 {
00706 Session sess;
00707
00708 //Now done via a ctor:: inittask(&sess);
00709 subtreewriterecurs(&sess, father);
00710 /* decrementandfreedisk (top); */
00711 sess.free();
00712 }
|
|
||||||||||||
|
??? (to be defined)
Definition at line 455 of file corediskout.cxx. References assert, typecbc::cenftype, changerefcount(), checkmodifiednotthere(), typecbc::cinfo, typediskloafptr::diskblocknumber, DISKPTRNULL, dump(), dumpsubtree(), GRAN, GRANNULL, GRANORGL, GRANTEXT, typecbc::height, typecuc::height, typegranbottomcruminfo::infotype, L, typecuc::leftson, loaffree(), orglwritepart2(), typecbc::rightbro, typecuc::sonorigin, typecorecrum, and uniqueoutloaf(). Referenced by orglwritepart2(), and subtreewrite().
00456 : User's session context 00457 typecuc *father) 00458 { 00459 if (!father || !father->height) 00460 assert(0); // Bad subtreewrite call 00461 00462 /* this, of course, assumes modified is set right */ 00463 if (!father->modified) { 00464 if (father->sonorigin.diskblocknumber == DISKPTRNULL) { 00465 L("insubtreewriterecurs sonorigin == -1\n"); 00466 dumpsubtree(father); 00467 assert(0); // in subtreewriterecurs 00468 } 00469 loaffree(father); 00470 return; 00471 } 00472 00473 // in order to guarantee integrity of disk, it's important to write out or increment sons before father 00474 00475 checkmodifiednotthere(father, "A"); 00476 typecbc *ptr; 00477 for (ptr = (typecbc *) father->leftson; ptr; ptr = (typecbc *) ptr->rightbro) { 00478 if (ptr->height == 0 && ptr->cenftype == GRAN && ptr->cinfo.infotype != GRANTEXT && ptr->cinfo.infotype != GRANORGL && ptr->cinfo.infotype != GRANORGL && ptr->cinfo.infotype != GRANNULL) { 00479 L("bad infotypein subtreewriterecursive = %d\n", ptr->cinfo.infotype); 00480 dump((typecorecrum *) ptr); 00481 assert(0); // subtreewriterecurs 00482 } 00483 00484 if (ptr->height != 0) 00485 subtreewriterecurs(sess, (typecuc *) ptr); 00486 else if (ptr->cenftype == GRAN && ptr->height == 0 && ((typecbc *) ptr)->cinfo.infotype == GRANORGL) 00487 orglwritepart2(sess, ptr); 00488 00489 ptr->modified = false; 00490 } 00491 00492 if (father->modified) { 00493 checkmodifiednotthere(father, "B"); 00494 00495 for (ptr = (typecbc *) father->leftson; ptr; ptr = (typecbc *) ptr->rightbro) { 00496 if (ptr->height > 0 && ((typecuc *) ptr)->sonorigin.diskblocknumber != DISKPTRNULL) 00497 changerefcount(((typecuc *) ptr)->sonorigin, 1); 00498 } 00499 00500 checkmodifiednotthere(father, "C"); 00501 uniqueoutloaf(father, 0); 00502 } 00503 00504 /* rejuvinate(father); */ 00505 loaffree(father); 00506 } |
|
||||||||||||
|
??? (to be defined) Definition at line 392 of file corediskout.cxx. References addallocatedloaftopartialallocedtables(), assert, typediskloafptr::diskblocknumber, DISKPTRNULL, findleftson(), humber, humber3put(), typecuc::leftson, packloaf(), partialdiskalloc(), typecuc::sonorigin, writeloaf(), and zzzerouberloaf. Referenced by subtreewriterecurs().
00395 {
00396 assert(father->modified);
00397
00398 typeuberdiskloaf loaf = zzzerouberloaf;
00399 if ((!father->leftson) && father->sonorigin.diskblocknumber != DISKPTRNULL) {
00400 findleftson(father); /* get it in so we know numberof sons zzz KLUGE is this right aug 15 86 */
00401 /* father->numberofsons = findnumberofdamnsons(father); */
00402 }
00403
00404 int size = packloaf(father, (typediskloaf *) &loaf, refcount, 0);
00405
00406 int newloaf;
00407 father->sonorigin = partialdiskalloc(size, &newloaf);
00408
00409 unsigned int temp;
00410 humber3put(size, (humber) &loaf, &temp);
00411
00412 /* loaf.numberofunterloafs = 1; */
00413
00414 if (false && newloaf) {
00415 addallocatedloaftopartialallocedtables(father->sonorigin, size);
00416 }
00417
00418 writeloaf((typediskloaf *) &loaf, father->sonorigin, newloaf);
00419 father->modified = false;
00420 }
|
|
||||||||||||||||||||
|
??? (to be defined) Definition at line 290 of file corediskout.cxx. References assert, typecuc::cenftype, typediskloafptr::diskblocknumber, DISKPTRNULL, dump(), findleftson(), typecuc::height, hputinfo(), hputinloaf, hputwiddsp(), humber, humber3put(), typediskloafptr::insidediskblocknumber, typecuc::leftson, typecuc::numberofsons, typecorecrumhedr::rightbro, typecuc::sonorigin, toomanysons(), and typecorecrum. Referenced by packloaf().
00295 {
00296 typecorecrum *ptr;
00297 int ret;
00298 unsigned int temp;
00299
00300 char *loafptr = (char *) xloafptr;
00301
00302 if (!flag) {
00303 if (!father || father->height == 0 || !loafptr) {
00304 dump((typecorecrum *) father);
00305 assert(0); // bad packloaf call
00306 }
00307
00308 assert(!father->leftson || !toomanysons(father)); // ERROR: Too many sons in packloaf
00309
00310 /* tempptr = loafptr; */
00311 loafptr += 3; /* make room for loaflength */
00312 hputinloaf(false, loafptr, &temp);
00313 hputinloaf(father->height - 1, loafptr, &temp);
00314 hputinloaf(father->cenftype, loafptr, &temp);
00315 hputinloaf(father->numberofsons, loafptr, &temp);
00316 hputinloaf(refcount, loafptr, &temp);
00317
00318 } else {
00319 /* tempptr = loafptr; */
00320 loafptr += 3; /* make room for loaflength */
00321 hputinloaf(true, loafptr, &temp);
00322 hputinloaf(father->height, loafptr, &temp);
00323 hputinloaf(father->cenftype, loafptr, &temp);
00324 hputinloaf(1, loafptr, &temp);
00325 hputinloaf(refcount, loafptr, &temp);
00326
00327 hputwiddsp(father, &loafptr);
00328 hputinloaf(father->sonorigin.diskblocknumber, loafptr, &temp);
00329 hputinloaf(father->sonorigin.insidediskblocknumber, loafptr, &temp);
00330
00331 if (father->sonorigin.diskblocknumber == 0) {
00332 // dump (ptr);
00333 assert(0); // trying to write 0 block
00334 }
00335 if (father->sonorigin.diskblocknumber == DISKPTRNULL) {
00336 /* dump (ptr); */
00337 assert(0); // trying to write DSKPTRNULL block
00338 }
00339
00340 return (int) loafptr - (int) xloafptr;
00341 }
00342
00343 for (ptr = (typecorecrum *) findleftson(father); ptr; ptr = ptr->rightbro) {
00344 hputwiddsp((typecuc *) ptr, (char **)&loafptr);
00345 if (ptr->height != 0) {
00346 hputinloaf(((typecuc *) ptr)->sonorigin.diskblocknumber, loafptr, &temp);
00347 hputinloaf(((typecuc *) ptr)->sonorigin.insidediskblocknumber, loafptr, &temp);
00348
00349 if (((typecuc *) ptr)->sonorigin.diskblocknumber == 0) {
00350 dump(ptr);
00351 assert(0); // trying to write 0 block
00352 }
00353
00354 if (((typecuc *) ptr)->sonorigin.diskblocknumber == DISKPTRNULL) {
00355 dump(ptr);
00356 assert(0); // trying to write DISKPTRNULL block
00357 }
00358 } else
00359 hputinfo((typecbc *) ptr, &loafptr);
00360 }
00361
00362 ret = (int) loafptr - (int) xloafptr;
00363 humber3put(ret, (humber) xloafptr, &temp);
00364 return ret;
00365 }
|
|
|
??? (to be defined) Definition at line 159 of file corediskout.cxx. References typecbc::cinfo, typediskloafptr::diskblocknumber, typegranorgl::diskorglptr, granf, GRANFDISKLOCATION, typegranbottomcruminfo::granstuff, typediskloafptr::insidediskblocknumber, L, typecbc::leftbroorfather, NULL, typegranorgl::orglincore, typegranorgl::orglptr, typegranstuff::orglstuff, orglwrite(), spanf, SPANFDISKLOCATION, and typecorecrum. Referenced by diskflush(), flagquitting(), indiskexit(), and main().
00160 {
00161 L("entering writeenfilades()\n");
00162
00163 typecbc temporgl;
00164
00165 temporgl.leftbroorfather = NULL;
00166 temporgl.modified = true;
00167 temporgl.cinfo.granstuff.orglstuff.orglincore = true;
00168 temporgl.cinfo.granstuff.orglstuff.diskorglptr.diskblocknumber = GRANFDISKLOCATION;
00169 temporgl.cinfo.granstuff.orglstuff.diskorglptr.insidediskblocknumber = 0;
00170 temporgl.cinfo.granstuff.orglstuff.orglptr = (typecuc *) granf;
00171 ((typecuc *) granf)->leftbroorfather = (typecorecrum *) &temporgl;
00172
00173 L("about to orglwrite() GRANF\n");
00174 orglwrite(&temporgl);
00175 L("returned from orglwrite() GRANF\n");
00176
00177 temporgl.modified = true;
00178 temporgl.cinfo.granstuff.orglstuff.orglincore = true;
00179 temporgl.cinfo.granstuff.orglstuff.diskorglptr.diskblocknumber = SPANFDISKLOCATION;
00180 temporgl.cinfo.granstuff.orglstuff.diskorglptr.insidediskblocknumber = 0;
00181 temporgl.cinfo.granstuff.orglstuff.orglptr = (typecuc *) spanf;
00182 ((typecuc *) spanf)->leftbroorfather = (typecorecrum *) &temporgl;
00183
00184 L("about to orglwrite() SPANF\n");
00185 orglwrite(&temporgl);
00186 L("returned from orglwrite() SPANF\n");
00187
00188 L("leaving writeenfilades()\n");
00189 }
|
|
|
|
Definition at line 89 of file corediskout.cxx. Referenced by eatbrossubtreend(). |
|
|
Definition at line 87 of file corediskout.cxx. Referenced by ishouldbother(). |
|
|
Definition at line 88 of file corediskout.cxx. Referenced by takenephewnd(). |
|
|
Definition at line 92 of file corediskout.cxx. Referenced by diskflush(), docopy(), docopyinternal(), docreatelink(), dofindlinksfromtothree(), dofindnumoflinksfromtothree(), domakelink(), examine(), finddocscontainingsp(), findnextnlinksfromtothreesp(), initsession(), retrievesporglsetinrange(), showenfilades(), and writeenfilades(). |
|
|
Definition at line 94 of file corediskout.cxx. Referenced by orglwritepart2(). |
|
|
Definition at line 95 of file corediskout.cxx. Referenced by uniqueoutloaf(). |
1.3.4