Lines Matching refs:blockrec

106 static int fs_read_glyphs ( FontPathElementPtr fpe, FSBlockDataPtr blockrec );
107 static int fs_read_list ( FontPathElementPtr fpe, FSBlockDataPtr blockrec );
109 FSBlockDataPtr blockrec );
128 FSBlockDataPtr blockrec );
404 FSBlockDataPtr blockrec,
426 blockrec = malloc(sizeof(FSBlockDataRec) + size);
427 if (!blockrec)
429 blockrec->data = (pointer) (blockrec + 1);
430 blockrec->client = client;
431 blockrec->sequenceNumber = -1;
432 blockrec->errcode = StillWorking;
433 blockrec->type = type;
434 blockrec->depending = 0;
435 blockrec->next = (FSBlockDataPtr) 0;
440 *prev = blockrec;
442 return blockrec;
448 FSBlockDataPtr blockrec;
450 for (blockrec = conn->blockedRequests; blockrec; blockrec = blockrec->next)
451 if (blockrec->errcode == StillWorking)
453 if (blockrec)
463 _fs_remove_block_rec(FSFpePtr conn, FSBlockDataPtr blockrec)
468 if (*prev == blockrec)
470 *prev = blockrec->next;
473 if (blockrec->type == FS_LOAD_GLYPHS)
475 FSBlockedGlyphPtr bglyph = (FSBlockedGlyphPtr)blockrec->data;
479 free(blockrec);
524 _fs_clean_aborted_blockrec(FSFpePtr conn, FSBlockDataPtr blockrec)
526 switch(blockrec->type) {
528 FSBlockedFontPtr bfont = (FSBlockedFontPtr)blockrec->data;
535 FSBlockedGlyphPtr bglyph = (FSBlockedGlyphPtr)blockrec->data;
547 binfo = (FSBlockedListInfoPtr) blockrec->data;
558 fs_abort_blockrec(FSFpePtr conn, FSBlockDataPtr blockrec)
560 _fs_clean_aborted_blockrec (conn, blockrec);
561 _fs_remove_block_rec (conn, blockrec);
713 fs_read_open_font(FontPathElementPtr fpe, FSBlockDataPtr blockrec)
716 FSBlockedFontPtr bfont = (FSBlockedFontPtr) blockrec->data;
760 if (blockOrig != blockrec && blockOrig->type == FS_OPEN_FONT)
765 blockrec->depending = blockOrig->depending;
766 blockOrig->depending = blockrec;
786 * Reset the blockrec for the next reply
788 blockrec->sequenceNumber = bfont->queryInfoSequence;
852 fs_read_query_info(FontPathElementPtr fpe, FSBlockDataPtr blockrec)
854 FSBlockedFontPtr bfont = (FSBlockedFontPtr) blockrec->data;
998 fs_send_query_bitmaps (fpe, blockrec);
1005 * Reset the blockrec for the next reply
1007 blockrec->sequenceNumber = bfont->queryExtentsSequence;
1014 fs_read_extent_info(FontPathElementPtr fpe, FSBlockDataPtr blockrec)
1017 FSBlockedFontPtr bfont = (FSBlockedFontPtr) blockrec->data;
1204 * Reset the blockrec for the next reply
1206 blockrec->sequenceNumber = bfont->queryBitmapsSequence;
1225 fs_do_open_font(FontPathElementPtr fpe, FSBlockDataPtr blockrec)
1227 FSBlockedFontPtr bfont = (FSBlockedFontPtr) blockrec->data;
1238 err = fs_read_open_font(fpe, blockrec);
1252 err = fs_read_query_info(fpe, blockrec);
1255 err = fs_read_extent_info(fpe, blockrec);
1259 err = fs_read_glyphs(fpe, blockrec);
1271 while ((blockrec = blockrec->depending))
1273 bfont = (FSBlockedFontPtr) blockrec->data;
1401 FSBlockDataPtr blockrec;
1409 for (blockrec = conn->blockedRequests;
1410 blockrec;
1411 blockrec = blockrec->next)
1413 if (blockrec->sequenceNumber == rep->sequenceNumber)
1417 if (!blockrec)
1427 switch (blockrec->type) {
1429 blockrec->errcode = fs_do_open_font(fpe, blockrec);
1432 blockrec->errcode = fs_read_glyphs(fpe, blockrec);
1435 blockrec->errcode = fs_read_list(fpe, blockrec);
1438 blockrec->errcode = fs_read_list_info(fpe, blockrec);
1443 err = blockrec->errcode;
1446 while (blockrec)
1448 blockrec->errcode = err;
1449 if (client != blockrec->client)
1450 ClientSignal(blockrec->client);
1451 blockrec = blockrec->depending;
1482 FSBlockDataPtr blockrec;
1493 for (blockrec = conn->blockedRequests; blockrec; blockrec = blockrec->next)
1495 switch (blockrec->type) {
1497 bfont = (FSBlockedFontPtr) blockrec->data;
1499 blockrec->errcode,
1500 blockrec->sequenceNumber,
1508 blockrec->errcode, blockrec->sequenceNumber);
1512 blockrec->type,
1513 blockrec->errcode,
1514 blockrec->sequenceNumber);
1624 FSBlockDataPtr blockrec = NULL;
1680 blockrec = fs_new_block_rec(font->fpe, client, FS_OPEN_FONT);
1681 if (!blockrec)
1700 bfont = (FSBlockedFontPtr) blockrec->data;
1726 blockrec->sequenceNumber = conn->current_seq;
1763 err = blockrec->errcode;
1766 while (blockrec->errcode == StillWorking)
1770 blockrec->errcode = BadFontName;
1775 err = blockrec->errcode;
1781 _fs_remove_block_rec (conn, blockrec);
1787 fs_send_query_bitmaps(FontPathElementPtr fpe, FSBlockDataPtr blockrec)
1790 FSBlockedFontPtr bfont = (FSBlockedFontPtr) blockrec->data;
1816 FSBlockDataPtr blockrec;
1824 for (blockrec = conn->blockedRequests; blockrec; blockrec = blockrec->next)
1826 if (blockrec->type == FS_OPEN_FONT && blockrec->client == client)
1828 err = blockrec->errcode;
1832 bfont = (FSBlockedFontPtr) blockrec->data;
1837 _fs_remove_block_rec (conn, blockrec);
1877 FSBlockDataPtr blockrec;
1880 for (blockrec = conn->blockedRequests; blockrec; blockrec = blockrec->next)
1882 if (blockrec->type == FS_OPEN_FONT)
1884 bfont = (FSBlockedFontPtr) blockrec->data;
1895 fs_read_glyphs(FontPathElementPtr fpe, FSBlockDataPtr blockrec)
1897 FSBlockedGlyphPtr bglyph = (FSBlockedGlyphPtr) blockrec->data;
1898 FSBlockedFontPtr bfont = (FSBlockedFontPtr) blockrec->data;
1904 blockrec->data structures */
1971 if (blockrec->type == FS_LOAD_GLYPHS)
2017 if (blockrec->type == FS_OPEN_FONT ||
2062 if (blockrec->type == FS_OPEN_FONT)
2082 FSBlockDataPtr blockrec;
2088 blockrec = fs_new_block_rec(fpe, client, FS_LOAD_GLYPHS);
2089 if (!blockrec)
2091 blockedglyph = (FSBlockedGlyphPtr) blockrec->data;
2118 blockrec->sequenceNumber = conn->current_seq;
2176 FSBlockDataPtr blockrec;
2182 for (blockrec = conn->blockedRequests; blockrec; blockrec = blockrec->next)
2184 if (blockrec->type == FS_LOAD_GLYPHS)
2186 blockedglyph = (FSBlockedGlyphPtr) blockrec->data;
2190 if (blockrec->client == client)
2192 err = blockrec->errcode;
2196 _fs_remove_block_rec(conn, blockrec);
2199 /* We've found an existing LoadGlyphs blockrec for this
2201 blockrec for it now (which entails some complex
2209 else if (blockrec->type == FS_OPEN_FONT)
2212 bfont = (FSBlockedFontPtr) blockrec->data;
2220 if (blockrec->client == client)
2222 err = blockrec->errcode;
2227 _fs_remove_block_rec(conn, blockrec);
2232 /* We've found an existing OpenFont blockrec for this
2234 blockrec for it now (which entails some complex
2238 if (blockrec->errcode == StillWorking)
2341 /* Get rid of blockrec */
2352 fs_read_list(FontPathElementPtr fpe, FSBlockDataPtr blockrec)
2355 FSBlockedListPtr blist = (FSBlockedListPtr) blockrec->data;
2410 FSBlockDataPtr blockrec;
2418 blockrec = fs_new_block_rec(fpe, client, FS_LIST_FONTS);
2419 if (!blockrec)
2421 blockedlist = (FSBlockedListPtr) blockrec->data;
2443 blockrec->sequenceNumber = conn->current_seq;
2465 FSBlockDataPtr blockrec;
2469 for (blockrec = conn->blockedRequests; blockrec; blockrec = blockrec->next)
2471 if (blockrec->type == FS_LIST_FONTS && blockrec->client == client)
2473 err = blockrec->errcode;
2476 _fs_remove_block_rec(conn, blockrec);
2489 fs_read_list_info(FontPathElementPtr fpe, FSBlockDataPtr blockrec)
2491 FSBlockedListInfoPtr binfo = (FSBlockedListInfoPtr) blockrec->data;
2636 FSBlockDataPtr blockrec;
2644 blockrec = fs_new_block_rec(fpe, client, FS_LIST_WITH_INFO);
2645 if (!blockrec)
2648 binfo = (FSBlockedListInfoPtr) blockrec->data;
2671 blockrec->sequenceNumber = conn->current_seq;
2696 FSBlockDataPtr blockrec;
2701 for (blockrec = conn->blockedRequests; blockrec; blockrec = blockrec->next)
2702 if (blockrec->type == FS_LIST_WITH_INFO && blockrec->client == client)
2705 if (!blockrec)
2707 /* The only good reason for not finding a blockrec would be if
2716 binfo = (FSBlockedListInfoPtr) blockrec->data;
2731 err = blockrec->errcode;
2734 _fs_remove_block_rec(conn, blockrec);
2738 blockrec->errcode = StillWorking;
2755 FSBlockDataPtr blockrec,
2775 for (blockrec = conn->blockedRequests; blockrec; blockrec = blockrec->next)
2776 if (blockrec->client == client)
2779 if (!blockrec)
2783 if ((depending = blockrec->depending))
2785 blockrec->client = depending->client;
2786 blockrec->depending = depending->depending;
2787 blockrec = depending;
2789 fs_abort_blockrec(conn, blockrec);