Lines Matching defs:finfo

31 static int check_fileproc (void *callerdat, struct file_info *finfo);
42 static int commit_fileproc (void *callerdat, struct file_info *finfo);
46 static int finaladd (struct file_info *finfo, char *revision, char *tag,
54 static int remove_file (struct file_info *finfo, char *tag,
215 find_fileproc (void *callerdat, struct file_info *finfo)
231 p->key = xstrdup (finfo->file);
236 xfinfo = *finfo;
244 error (0, 0, "nothing known about `%s'", finfo->fullname);
247 program_name, finfo->fullname);
257 " again)", finfo->fullname);
275 finfo->fullname);
304 node->key = xstrdup (finfo->fullname);
715 classify_file_internal (struct file_info *finfo, Vers_TS **vers)
734 status = Classify_File (finfo, NULL, NULL,
742 xstatus = Classify_File (finfo, saved_tag, NULL,
766 status = Classify_File (finfo, xtag, NULL,
774 status = Classify_File (finfo, xtag, NULL,
786 status = Classify_File (finfo, saved_tag, NULL, NULL, 1, 0, vers, 0);
802 check_fileproc (void *callerdat, struct file_info *finfo)
815 if (!finfo->repository)
817 error (0, 0, "nothing known about `%s'", finfo->fullname);
821 if (strncmp (finfo->repository, current_parsed_root->directory,
823 && ISSLASH (finfo->repository[cvsroot_len])
824 && strncmp (finfo->repository + cvsroot_len + 1,
827 && ISSLASH (finfo->repository[cvsroot_len + sizeof (CVSROOTADM)])
828 && strcmp (finfo->repository + cvsroot_len + sizeof (CVSROOTADM) + 1,
831 error (1, 0, "cannot check in to %s", finfo->repository);
833 status = classify_file_internal (finfo, &vers);
849 error (0, 0, "Up-to-date check failed for `%s'", finfo->fullname);
878 finfo->fullname);
882 !RCS_isbranch (finfo->rcs, vers->tag))
886 vers->tag, finfo->fullname);
894 finfo->fullname);
897 if (status == T_MODIFIED && !force_ci && file_has_markers (finfo))
912 finfo->fullname);
921 " back again)", finfo->fullname);
934 " tag of `%s'", finfo->fullname, vers->tag);
943 if (finfo->rcs != NULL &&
944 !RCS_isdead (finfo->rcs, finfo->rcs->head))
948 finfo->fullname, finfo->rcs->path);
957 finfo->fullname, vers->tag);
963 if (finfo->update_dir[0] == '\0')
966 xdir = finfo->update_dir;
990 p->key = xstrdup (finfo->file);
1001 editors = fileattr_get0 (finfo->file, "_editors");
1043 finfo->fullname);
1057 p->key = xstrdup (finfo->file);
1066 ci->rev = RCS_whatbranch (finfo->rcs, vers->tag);
1085 fullpath = Xasprintf ("%s/%s", working_dir, finfo->fullname);
1088 are keyed on finfo->fullname, not on finfo->name. */
1110 error (0, 0, "nothing known about `%s'", finfo->fullname);
1327 commit_fileproc (void *callerdat, struct file_info *finfo)
1339 && finfo->rcs != NULL)
1341 char *rev = RCS_getversion (finfo->rcs, write_dirtag, NULL, 1, NULL);
1343 && !RCS_nodeisbranch (finfo->rcs, write_dirtag))
1349 if (finfo->update_dir[0] == '\0')
1352 p = findnode (mulist, finfo->update_dir);
1372 do_editor (finfo->update_dir, &saved_message,
1373 finfo->repository, ulist);
1374 do_verify (&saved_message, finfo->repository, ulist);
1377 p = findnode (cilist, finfo->file);
1384 if (finfo->rcs == NULL)
1386 if (lock_RCS (finfo->file, finfo->rcs, ci->rev,
1387 finfo->repository) != 0)
1389 unlockrcs (finfo->rcs);
1396 if (checkaddfile (finfo->file, finfo->repository, ci->tag, ci->options,
1397 &finfo->rcs) != 0)
1399 if (finfo->rcs != NULL)
1400 fixaddfile (finfo->rcs->path);
1415 if (finfo->rcs == NULL)
1419 ci->rev = RCS_whatbranch (finfo->rcs, ci->tag);
1420 err = Checkin ('A', finfo, ci->rev,
1424 unlockrcs (finfo->rcs);
1425 fixbranch (finfo->rcs, sbranch);
1445 (void) walklist (finfo->entries, findmaxrev, NULL);
1446 if (finfo->rcs->head)
1449 int thisrev = atoi (finfo->rcs->head);
1459 err = finaladd (finfo, ci->rev ? ci->rev : xrev, ci->tag, ci->options);
1465 err = Checkin ('M', finfo, ci->rev, ci->tag,
1472 unlockrcs (finfo->rcs);
1473 fixbranch (finfo->rcs, sbranch);
1478 err = remove_file (finfo, ci->tag, saved_message);
1483 server_updated (finfo,
1498 notify_do ('C', finfo->file, finfo->update_dir, getcaller (), NULL, NULL,
1499 finfo->repository);
1505 p = findnode (ulist, finfo->file);
1523 p = findnode (ulist, finfo->file);
1529 (void) classify_file_internal (finfo, &vers);
1715 remove_file (struct file_info *finfo, char *tag, char *message)
1732 if (finfo->rcs == NULL)
1736 if (tag && !(branch = RCS_nodeisbranch (finfo->rcs, tag)))
1739 if ((retcode = RCS_deltag (finfo->rcs, tag)) != 0)
1744 finfo->fullname);
1747 RCS_rewrite (finfo->rcs, NULL, NULL);
1748 Scratch_Entry (finfo->entries, finfo->file);
1761 rev = RCS_whatbranch (finfo->rcs, tag);
1768 branchname = RCS_getbranch (finfo->rcs, rev, 1);
1773 corev = RCS_gettag (finfo->rcs, tag, 1, NULL);
1786 prev_rev = RCS_head (finfo->rcs);
1793 if (RCS_setbranch (finfo->rcs, NULL) != 0)
1796 finfo->fullname);
1799 RCS_rewrite (finfo->rcs, NULL, NULL);
1804 retcode = RCS_checkout (finfo->rcs, finfo->file, rev ? corev : NULL,
1809 "failed to check out `%s'", finfo->fullname);
1817 if (RCS_lock (finfo->rcs, rev ? corev : NULL, 1) == 0)
1818 RCS_rewrite (finfo->rcs, NULL, NULL);
1824 retcode = RCS_checkin (finfo->rcs, NULL, finfo->file, message,
1830 "failed to commit dead revision for `%s'", finfo->fullname);
1835 history_write ('R', NULL, finfo->rcs->head, finfo->file, finfo->repository);
1840 old_path = xstrdup (finfo->rcs->path);
1842 RCS_setattic (finfo->rcs, 1);
1849 if (finfo->update_dir && strlen (finfo->update_dir))
1851 cvs_output (finfo->update_dir, 0);
1854 cvs_output (finfo->file, 0);
1864 Scratch_Entry (finfo->entries, finfo->file);
1874 finaladd (struct file_info *finfo, char *rev, char *tag, char *options)
1878 ret = Checkin ('A', finfo, rev, tag, options, saved_message);
1881 char *tmp = Xasprintf ("%s/%s%s", CVSADM, finfo->file, CVSEXT_LOG);
1887 else if (finfo->rcs != NULL)
1888 fixaddfile (finfo->rcs->path);
1917 * FIXME: Every caller that calls this function can access finfo->rcs (the